Разработка ПОbash скрипт для проверки почты на gmail

Здесь хочу поделится простым, но иногда очень полезным скриптом написанным на bash.

Скрипт для проверки почты на gmail:

#!/bin/bash

read -p "Input your name in gmail: " username;
read -p "Input your password in gmail: " password;

echo -e "Checking for new messages... \c"

atomlines=`wget -T 3 -t 1 -q --secure-protocol=TLSv1 \
 --no-check-certificate \
 --user=$username --password= $password \
 https://mail.google.com/mail/feed/atom -O - \
 | wc -l`

echo -e "\r\c"

[ $atomlines -gt "8" ] \
 && echo -e " You have new gmail." \
 || echo -e " No new gmail."


Надеюсь вам он окажется полезным.

Други полезные скрипты на bash — bash-snippets
  • +7
  • sterh
  • 18 ноября 2010, 17:08

Блог им. zavetromПеретаскивание всей почты из одного gmail-аккаунта в другой

Эта проблема меня давно волновала, и вот решил спросить тут. Может подскажешь?
Нужно — «скопировать» один почтовый аккаунт гугл в другой. Оба аккаунта пренадлежат мне, т.е. с доступом и паролями проблем никаких нет. Скопировать надо все сообщения — входящие и исходящие. Спам не надо, ладно уж :-) Как реализовать?..

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