PythonВытягиваем количество входящих сообщений на Gmail

Недавно прочитал статью на хабре. Решил сделать свой вариант, только с рапутницами и преферансом, потому что часто приходится шарахаться между виндой и линуксом, нужно было кроссплатформенное рашение. Решил что может быть интересно кому-нибудь, тем более, что последнее время были жалобы на нехватку статей. Вот листинг:

import urllib  ## импорт модулей
import re

gml = ''
adr = "https://mail.google.com/mail/feed/atom"  ## адрес гуглоленты и получение ее исходника
cont = urllib.urlopen(adr)  ## регулярное выражение для получения количества входящих
s = cont.read() 

reg = re.compile(r"<fullcount>\d+</fullcount>")  ## которое хранится между тегами <fullcount></fullcount>

gmlcnt = reg.search(s).group()
reg2 = re.compile(r"\d+")  ## образаем <fullcount></fullcount>
gml = reg2.search(gmlcnt).group()

print 'Gmail inbox:', gml  ## наверно вывод =)

while raw_input():
    pass


Вот и все. Такая вот ерунда.

Есть ещё такой менее безопасный но действенный способ:

import os
import string


username="login"
password="*****"

com="wget -O - https://"+username+":"+password+"@mail.google.com/mail/feed/atom --no-check-certificate"

temp=os.popen(com)
msg=temp.read()
index=string.find(msg,"<fullcount>")
index2=string.find(msg,"</fullcount>")
fc=int(msg[index+11:index2])

if fc==0:
   print "0"
else:
   print str(fc)+""
  • +5
  • v0id
  • 14 сентября 2009, 23:15

Текстовые редакторыVim

Зарегистрировался сегодня на open-life.org и первым делом начал искать посты по интересным для меня темам. И, надо сказать, я был крайне удивлён отсутствием какой бы то ни было информации о Vim'е. По моему мнению на сайте подобной тематики должен быть отдельный блог «Vim» или, хотя бы, дюжина постов о Vim'е в блоге «Текстовые редакторы», потому как об этом редакторе можно сказать очень и очень много.

Ну, раз эта тема ещё не поднималась, придётся мне её начать. Под катом вы найдёте краткий обзор Vim и несколько ссылок.
Читать дальше
  • +9
  • iley
  • 25 августа 2009, 10:19

PythonЧуть более развернутое введение в Python

Для тех, кого заинтересовал пост товарища nuclear, пишу более развернутый вариант введения, с некоторым количеством академического занудства :)
Эта статья расчитана скорее не на новичков в программировании, а на разработчиков на других языках, которые хотят изучить Python, и которым интересно увидеть обзор его синтаксиса.
Примечание: в этой статье символы >>> это не часть кода, а приглашение интерпретатора к вводу команд. Писать его не нужно, оно оставлено только чтобы примеры выглядели точно так же, как то, что увидите вы, если решите их проверить.
Описанное здесь касается Python 2.5, синтаксис 3.x имеет ряд отличий.
Что это за язык?
Пайтон — язык высокого уровня, со строгой динамической типизацией. Поддерживает следующие парадигмы:
— Императивная (структурная)
— Объектно-ориентированная
— Функциональная
Каноническая реализация, CPython представляет собой интерпретатор компилирующего типа.
Читать дальше

PythonВведение в Python

Python ([?pa???n]; па?йсон, па?йтон, пито?н) — высокоуровневый язык программирования общего назначения с акцентом на производительность разработчика и читаемость кода. Синтаксис ядра Питона минималистичен. В то же время стандартная библиотека включает большой объём полезных функций.

Для этого небольшого урока желательно знание другого языка программирования, т.е. необходимо понимать что такое переменные, массивы,etc. Читать дальше

QtУчим Qt вместе. Part 3

Ну вот я снова с Вами и с новой статьёй о QT =). Сегодня поговорим об интересной штуке… о том как можно получить доступ к БД и вывести данные в таблицу на форме.
Для доступа к БД мы будем использовать QtSql — набор классов для работы с базами данных используя язык структурированных запросов SQL. Основные классы данного модуля:
*QSqlDatabase — класс для предоставления соединения с базой, для работы с какой-нибудь конкретной базой данных требует объект, унаследованный от класса.
*QSqlQuery — реализует интерфейс между Qt и базами данных SQL.
*QSqlDriver — абстрактный класс, который реализуется для конкретной базы данных и может требовать для компиляции SDK базы данных. Например, для сборки драйвера под базу данных FireBird/InterBase требует .h файлы и библиотеки статической линковки, входящие в комплект поставки данной БД.
Читать дальше

BashЯзык командного интерпретатора bash. Part 8. «Обработка сигналов и протоколирование»

И настал, наконец, черёд восьмого топика о командном интерпретаторе bash. Им я завершаю свой цикл статей. Сегодня будет рассмотрена обработка сигналов в bash и протоколирование. Данный топик, также как и предущий, будет небольшим в связи с прямо пропорциональной зависимостью от объёма информации.
Возможности bash позволяют перехватывать и обрабатывать сигналы с помощью сценария. Под сигналами понимается средство, позволяющее сообщать процессам о различных событиях в операционной системе.
Читать дальше

GnomeПеревод GTK Theming Tutorial

Доброго времени суток!
Решил я украсить немного гном, но не нашел ни одной темы которая мне нравилась, точнее нашел, но у них у всех был один общий недостаток — большие бордеры у окон. Ну вот не нравятся они мне хоть тресни. Решил думать как это поправить. В результате пришел на гномовский туториал и решил его заодно перевести и выложить сюда, авось кому пригодится. Если будет интересно могу перевести и остатки, ибо сам читать все ранвно буду. Ввиду отсутствия тэга table и наличия некоторого количества таблиц, возникает опасность поражения трафиком :) будьте внимательны и осторожны Читать дальше

BashЯзык командного интерпретатора bash. Part 7. «Функции»

Вот и наступил черёд седьмого топика цикла о языке командного интерпретатора bash. В некотором роде число «7» является везучим, как говорят в народе. Надеюсь, и меня не обойдёт данная примета.
Сегодня будут разобраны такие конструкции языка bash, как функции. Надеюсь, тебе не нужно рассказывать о том, что такое функция и для чего она применяется, ведь её смысл эквивалентен понятию функции из любого другого языка программирования. Объём информации сегодня не большой, поэтому пост имеет довольно скромные размеры. Итак, приступим к непосредственному разбору функций в bash.
Читать дальше

BashЯзык командного интерпретатора bash. Part 5. «Операторы цикла»

И вот настал черёд пятого топика цикла. В нём я продолжу рассматривать управляющие структуры командного интерпретатора bash. В предыдущем посте были разобраны условные операторы. Теперь настал черёд таких неотъемлемых языковых структур, как операторы цикла. Циклы, как и условия, являются теми инструментальными средствами, которые обеспечивают управление порядком исполнения команд.
Bash поддерживает циклы типа for, while, until и select. Теперь перейдём к подробному рассмотрению каждого из них.
Читать дальше

QtУчим Qt вместе. Part 2

Ну вот и продолжение цикла о QT. Сори что так долго. В прошлой статье мы создали минимальное приложение с одной кнопкой на форме. В этой статье разберем более сложный пример в котом мы будем использоваться меню, строка состояния а также научимся создавать свои слоты.
Читать дальше