Вот как я это сделал в простом виджете для оконного менеджера awesome (да, это его имя :)). Оригинальный скрипт здесь: gmail.lua .
Основная концепция заключается в том, чтобы просто использовать входящий фид и получать все письма (вы получите только резюме, а не весь контент) для специального тега «непрочитанный». URL-адрес https://mail.google.com/mail/feed/atom/unread
, вам просто нужно получить его (после аутентификации, конечно), а затем проанализировать. Вы можете использовать какой-то синтаксический анализатор XML или просто регулярное выражение (<fullcount>([%d]+)</fullcount>
) - искомый номер находится в начале, в теге <fullcount>
.
Итак, это один из способов сделать это, довольно простой и «тупой», но, эй, это работает: D Это может быть не лучшим решением, так как требует, чтобы вы получили весь канал (в зависимости от количества ваших непрочитанные сообщения и тип / качество соединения, это может быть не так быстро, как , просто выборка количества непрочитанных сообщений), но, как обычно, реальное тестирование должно прояснить это)