Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 14/04/2010, à 16:57

Laurent_chébran

[Conky] Script gmail (résolu)

Salut,

J'essaie de faire tourner un script pour une notification de gmail dans un conky.. et j'ai un problème ..

Voici la chose en question :

import os

import string



#Enter your username and password below within double quotes

# eg. username="username" and password="password"

username="######@gmail.com"

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 new"

else:

   print str(fc)+" new"

et la réponse du terminal au lancement de conky


laurent@laurent-laptop:~$ conky 
Conky: border_margin is deprecated, please use window.border_inner_margin instead
Conky: use_spacer should have an argument of left, right, or none.  'no' seems to be some form of 'false', so defaulting to none.
Conky: desktop window (20000a7) is subwindow of root window (fb)
Conky: window type - override
Conky: drawing to created window (0x2200001)
Conky: drawing to double buffer
https://#####@gmail.com:####@mail.google.com/mail/feed/atom: Mauvais numéro de port.
Traceback (most recent call last):
  File "/home/laurent/.scripts/gmail.py", line 15, in <module>
    fc=int(msg[index+11:index2])
ValueError: invalid literal for int() with base 10: ''

(j'ai remplacé mes identifiants par ###..mais ils sont corrects)

...Quelqu'un à la solution ? Merci, a+

Dernière modification par Laurent_chébran (Le 14/04/2010, à 19:49)

Hors ligne

#2 Le 14/04/2010, à 17:13

bejazzy

Re : [Conky] Script gmail (résolu)

Salut,

Vérifie la valeur de :

msg[index+11:index2]

D'après l'erreur, ça a l'air d'être un string vide. Je te conseille de vérifier les indices, la valeur de 'msg' et surtout si tu n'as pas de cas particulier: la donnée que tu souhaite extraire est-elle toujours entre ces 2 indices?

Par ailleurs, si on demande de convertir une variable string en un entier et que cette dernière n'est effectivement pas un string d'entier, c'est ce genre d'erreur que Python renvoie. Par exemple

>>> int('1')
 1
>>> int('a')
 ValueError: invalid literal for int() with base 10: 'a'

Dell Inspiron 1525 - #!CrunchBang Linux 10 Statler Xfce --- #! FR

Hors ligne

#3 Le 14/04/2010, à 17:17

Laurent_chébran

Re : [Conky] Script gmail (résolu)

Rien capté big_smile

C'est pas moi qui ai écrit tout ça.. d'ailleurs je ne sais pas comment on fait.. j'essaie juste de faire fonctionner..

T'as une marche à suivre plus... pas à pas .. ?

Hors ligne

#4 Le 14/04/2010, à 19:35

bejazzy

Re : [Conky] Script gmail (résolu)

Au temps pour moi et milles excuses ! J'étais persuadé que le script était de toi et/ou que tu connaissais un peu le Python. Arpès avoir essayé, effectivement, y'a un truc qui va pas.

Je te conseille de remplacer

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

par

com = "wget -q --no-check-certificate -O - https://mail.google.com/mail/feed/atom"
com += " --http-user=%s" % username
com += " --http-passwd=%s" % password

Je viens de tester et chez moi, ça marche. D'ailleurs, ça m'indique que j'ai 3 nouveaux messages !!


Dell Inspiron 1525 - #!CrunchBang Linux 10 Statler Xfce --- #! FR

Hors ligne

#5 Le 14/04/2010, à 19:49

Laurent_chébran

Re : [Conky] Script gmail (résolu)

bejazzy a écrit :

Je viens de tester et chez moi, ça marche. D'ailleurs, ça m'indique que j'ai 3 nouveaux messages !!

Impeccable.. ça fonctionne..

Un super merci.. wink  et a+

Hors ligne

#6 Le 11/10/2010, à 20:44

stiss

Re : [Conky] Script gmail (résolu)

merci
moi aussi,ça fonctionne big_smile

mon .conkyrc

use_xft yes
xftfont Bitstream Vera Sans Mono:size=8
xftalpha 0.8
update_interval 1.0
total_run_times 0
own_window yes
own_window_transparent yes
##own_window_hints undecorated,below,skip_taskbar
own_window_hints undecorated,below,sticky,skip_taskbar,skip_pager
background yes
double_buffer yes
minimum_size 290 5
draw_shades yes
draw_outline no
draw_borders no
stippled_borders 8
border_margin 0
border_width 0
default_color white
default_shade_color black
default_outline_color black
alignment top_right
gap_x 10
gap_y 10
no_buffers yes
uppercase no
cpu_avg_samples 2
net_avg_samples 2
override_utf8_locale yes
use_spacer yes
min_port_monitors            0
min_port_monitor_connections        0
text_buffer_size 1024


TEXT

${color #5D9451}$alignc ${time %H:%M:%S}
${color #5D9451}$alignc ${time %A %d %B %Y}
${color #5D9451}$alignc $nodename - $sysname $kernel on $machine
${color lightgrey}
${color lightgrey}Occupation
${color #000000}$stippled_hr
${color #FFFFFF}$alignc ${color #5D9451}CPU Core 1 ${color #FFFFFF}@ $freq_g GHz :${color #FFFFFF} ${cpu cpu1}%
${color #FFFFFF}${cpugraph cpu1 FFFFFF 2D5523}
${color #FFFFFF}$alignc ${color #5D9451}CPU Core 2 ${color #FFFFFF}@  $freq_g GHz :${color #FFFFFF} ${cpu cpu2}%
${color #FFFFFF}${cpugraph cpu2 FFFFFF 2D5523}
${color #000000}$stippled_hr
${color #5D9451}$alignc Memoires
${color #FFFFFF}$alignc ${color #5D9451}Ram ${color #FFFFFF} $mem / $memmax   $memperc%
${color #5D9451}${membar}
${color #FFFFFF}$alignc ${color #5D9451}Swap ${color #FFFFFF} $swap / $swapmax   $swapperc%
${color #5D9451}${swapbar}
${color #000000}$stippled_hr
${color #FFFFFF}$alignc ${color #5D9451}Reseau  ${color #FFFFFF}IP  ${addr eth0}${execi 300 /home/steph/conky/.conky.gmail.py}
$hr
${color #FFFFFF}      Download${color FFFFFF} ${downspeed eth0} Ko/s${color FFFFFF} ${offset 70}${color FFFFFF}Upload${color FFFFFF} ${upspeed eth0} Ko/s
${color #FFFFFF}${downspeedgraph eth0 32,150 FFFFFF 2D5523} ${color #FFFFFF}${upspeedgraph eth0 32,150 FFFFFF 2D5523}
${color #FFFFFF}Total           ${totaldown eth0} ${offset 100} ${color #FFFFFF} ${totalup eth0}
${color #000000}$stippled_hr
${color #5D9451}$alignc /     ${color #FFFFFF}${fs_used /} / ${fs_size /}
${color #5D9451}${fs_bar /}
${color #5D9451}$alignc /home     ${color #FFFFFF}${fs_used /home} / ${fs_size /home}
${color #5D9451}${fs_bar /home}
${color #5D9451}$alignc /media/STOREX        ${color #FFFFFF}${fs_used /media/STOREX} / ${fs_size /media/STOREX}
${color #5D9451}${fs_bar /media/STOREX}
${color #000000}$stippled_hr
${color #5D9451}$alignc Uptime ${color #FFFFFF}$uptime
${color}CPU usage
${offset 80}${color #CCCCCC}Nom ${alignr 50}PID ${alignr 20}CPU%
${offset 80}${color #ddaa00}${top name 1} ${alignr 30}${top pid 1} ${alignr 15}${top cpu 1}
${offset 80}${color #888888}${top name 2} ${alignr 30}${top pid 2} ${alignr 15}${top cpu 2}
${offset 80}${color #888888}${top name 3} ${alignr 30}${top pid 3} ${alignr 15}${top cpu 3}
${color}Mem usage
${offset 80}${color #CCCCCC}Nom ${alignr 50}PID ${alignr 20}Mem%
${offset 80}${color #ddaa00}${top_mem name 1} ${alignr 30}${top_mem pid 1} ${alignr 15}${top_mem mem 1}
${offset 80}${color lightgrey}${top_mem name 2} ${alignr 30}${top_mem pid 2} ${alignr 15}${top_mem mem 2}
${offset 80}${color lightgrey}${top_mem name 3} ${alignr 30}${top_mem pid 3} ${alignr 15}${top_mem mem 3}
${color white}CPU Temp: ${color #5D9451}${acpitemp} degres
${color white}Usage RAM :${color #5D9451} $mem/$memmax - ${color #ddaa00}$memperc% ${color #5D9451}${membar}
${color #d2d2d2}swap: ${color #CCCCCC} $swap ${color #d2d2d2}/${color #CCCCCC}$swapmax ${color #d2d2d2} ${color #CCCCCC}$swapperc%
${color white}Processus :${color #5D9451} $processes ${color #5D9451}Running:${color #5D9451} $running_processes
Gmail: ${color e0e0e0}${execi 120 python ~/conky/gmail.py}${color}

et le scripte (modifié)      gmail.py

import os

import string



#Enter your username and password below within double quotes

# eg. username="username" and password="password"

username="#######@gmail.com"

password="#######"



com = "wget -q --no-check-certificate -O - https://mail.google.com/mail/feed/atom"
com += " --http-user=%s" % username
com += " --http-passwd=%s" % password



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 new"

else:

   print str(fc)+" new"




génial !!! j'ai galéré ....alors vraiment merci a vous
et ça fonctionne carrément bien (j'ai reçu trois mails et "détecté" aprés les avoir lu,retour a 0 new et cinq minutes aprés ,4 new et redétecté !!   cool  cool

#7 Le 04/02/2011, à 13:43

Woulouf

Re : [Conky] Script gmail (résolu)

Merci pour ce script python, ca fonctionne impeccable !


Linux Mint 17.3 Cinnamon 64 bits

Hors ligne