Conky, ukuseta kwam

I-Fecfactor indibuze izolo ukuba ndishicilele ubumbeko lwe-conky endiyibonisayo kumfanekiso ongezantsi

Njengoko ubona kukho ii-conkys ezi-3, ezenziwa kusetyenziswa iskripthi, ubumbeko lwayo lusekwe esi sithuba ithunyelwe ngumsebenzisi uBruce M. kwiiforamu ze Ubuntu-Ar ngolunye uhlengahlengiso kwi-imeyile conky, kwimeko yam yeyoku-Gmail.

Kwiphepha lesalathiso lichazwe kakuhle nguBruce, kodwa nanjengoncedo lwenkumbulo kum, ndiza kukopa amanyathelo ekufuneka ndiwalandele kunye nekhowudi yeekhonkoni zam kuye nabani na onayo.

Ewe kunjalo kufuneka ukuba sibe ne-conky, curl kunye ne-python efakiweyo ukuze sichwetheze ikhonsoli:

Sudo apt-fumana ukufaka i-conky curl python

Umthombo wemozulu.ttf kunye neentolo.ttf ulapha. Umthombo wenyanga.ttf ulapha xa sele ukhutshiwe kufuneka ukope kwi / usr / share / fonts

Masenze iskripthi esibizwa ngokuba yi- ~. / Startconky

gksudo gedit ~ / .startconky

ngaphakathi kwefayile engenanto sincamathisela oku kulandelayo

#! / bin / ibash
ukulala 0 & # 0 kulungile kwiXfce- sebenzisa i-20 ukuya kwi-30 yeGnome
conky -c ~ / Conky / conkymain kunye
#sleep 0 & # 0 ilungile kwiXfce- sebenzisa 1 kwiGnome
conky -c ~ / Conky / conkyforecast kunye
#sleep 0 & # 0 ilungile kwiXfce- sebenzisa 1 kwiGnome
conky -c ~ / Conky / conkymail kunye

Ngoku senza ifayile ye-conkymain kwifolda ye- ~ / Conky, kungenjalo sinayo ifolda yeConky, kuya kufuneka siyenze.

gedit ~ / Conky / conkymain

Ndisebenzisa ifonti yeCalibri, ukuba awunayo, yitshintshe ngayo nantoni na oyifunayo.

Sinamathela ngaphakathi kulandelayo

imvelaphi hayi
eyakho_window ewe
eyakho_window_yokucaca ewe
eyakho_window_hints ezingakhange zihonjiswe, apha ngezantsi, zincangathi, tsiba_taskbar, tsiba_phepha
eyakho_efestile_ umbala omnyama
kabini_buffer ewe
use_spacer ekhohlo
sebenzisa_xft ewe
ifonti calibri: ubungakanani = 9
xftfont calibri: ubungakanani = 9
xftalpha 0.5
Uhlaziyo_okungena kwi-5.0
oonobumba abakhulu abayi- # ukuseta ku-ewe ukuba ufuna ukuba sonke isicatshulwa sibhalwe ngoonobumba abakhulu
Umda_wemida 3
umda_umda 9
umda_bubanzi 10
default_color emhlophe
default_outline_color emnyama
okungagqibekanga_i-color_color emnyama
umbala0 wecyan
umbala omnyama okhanyayo
umbala2 orenji
umbala omthubi
umbala4 ingqolowa
umbala5 umhlophe
umbala6 umhlophe
umbala7 umhlophe
umbala8 umhlophe
umbala9 umhlophe
ulungelelwaniso phezulu_esokudla # okanye phezulu_khohlo, ezantsi_khohlo, ezantsi_ ekunene
isikhewu_x 10
isikhewu_ 35
i-text_buffer_size 128 # sebenzisa 1024 kwisimo sezulu
hayi_buffers ewe # Ukukhupha iifayile kwifomathi kwimemori esetyenzisiweyo?
zoba_imida hayi
zoba_kumgca ewe # yandisa isicatshulwa ukuba ewe
zoba_imithunzi ewe # shadecolor emnyama

TEXT
$ {font calibri: size = 12} $ {alignc} $ {color1} $ sysname $ kernel on $ machine} $ color $ ifonti
$ {font calibri: size = 12} $ {alignc} $ {color2} $ {exec whoami} @ $ nodename $ color $ ifonti
$ {color0} $ {hr 1} $ umbala
$ {font calibri: size = 20} $ {alignc} $ {time% H:% M} $ ifonti
$ {font calibri: size = 12} $ {color1} $ {alignc} $ {ixesha% A,% d% b. % Y} $ umbala $ font
$ {color3} Ixesha lokuGcina: $ {alignr 2} $ uptime $ color
$ {color0} $ {hr 1} $ umbala
$ {voffset 5} $ {color2} CPU: $ {alignc} $ color $ running_processes $ {color1} / $ color $ iinkqubo $ {alignr 2} $ {color2} $ {cpubar cpu0 14,80} $ color
$ {color1} $ {voffset -16} $ {alignr 5} $ cpu% $ umbala
$ {voffset 2} $ {color1} Layisha Umdaniso ($ {color3} Min $ {color1}): $ {alignr 2} $ {color3} 1: $ color $ {loadavg 1} $ {color3} 5: $ color $ {umthwaloavg 2} $ {umbala3} 15: $ $ $ {loadavg 3}
$ {voffset 5} $ {color2} RAM: $ color $ mem $ {color2} / $ color $ memmax $ {alignr 2} $ {color2} $ {membar 14,80} $ color
$ {color1} $ {voffset -16} $ {alignr 5} $ memperc% $ umbala
$ {voffset 2} $ {color1} Egciniweyo: $ color $ {buffers} $ {alignr 2} $ {color1} Cached: $ color $ {cached}
$ {voffset 5} $ {color2} SWAP: $ color $ swap $ {color2} / $ color $ {swapmax} $ {alignr 2} $ {color2} $ {swapbar 14,80} $ color
$ {umbala1} $ {voffset -16} $ {alignr 5} $ swapperc%
$ {color0} $ {hr 1} $ umbala
$ {voffset 5} $ {color2} HD Info $ {color1} - $ color Free $ {color1} - Isetyenzisiwe - $ {color2} Iyonke
$ {voffset 5} $ {color1} Umsuka: $ color $ {fs_free_perc /}% $ {alignr 2} $ {fs_free /} $ {color2} / $ {color1} $ {fs_used /} $ color / $ {color2} $ {fs_size /} $ umbala
$ {color1} Ekhaya: $ color $ {fs_free_perc / home / user}% $ {alignr 2} $ {fs_free / home / user} $ {color2} / $ {color1} $ {fs_used / home / user} $ color / $ {color2} $ {fs_size / home / user} $ umbala
$ {color0} $ {hr 1} $ umbala
$ {color1} Ukusuka: $ umbala Buenos Aires, Argentina
$ {color1} Lat: $ {color2} 34 ° 35'S $ {color1} Ixesha elide: $ {color2} 58 ° 21'W $ {color1} Alt: $ {color2} 25 m $ umbala
$ {voffset 5} $ {color2} $ {font calibri: size = 12} namhlanje: $ font $ {color3} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = CC} $ umbala $ {alignr 2} $ {color1} ST: $ {color2} $ {execi 3600 python ~ / Conky / script / conkyForecast.py -location = ARBA0009 –datatype = LT}
$ {color3} $ {font Weather: size = 50} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = WF} $ ifonti $ umbala
$ {alignr 50} $ {voffset -55} $ {font calibri: size = 25} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 -datatype = HT} $ ifonti
$ {alignc 20} $ {voffset -30} $ {font Arrows: size = 20} $ {color4} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 -datatype = BF} $ color $ ifonti
$ {alignc 10} $ {voffset 5} $ {color4} Wind: $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = WS} $ umbala
$ {color1} Ukufuma: $ {color3} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = HM} $ {alignr 2} $ {color1} Precipitation: $ {color3} $ { yenza i-3600 python ~ / Conky / script / conkyForecast.py –location = ARBA0009 –datatype = PC} $ color
$ {alignc} $ {color1} Uxinzelelo: $ {color3} $ {execi 3600 python ~ / Conky / scrcript / conkyForecast.py –location = ARBA0009 –datatype = BR} - $ {color3} $ {execi 3600 python ~ / Conky /script/conkyForecast.py –location = ARBA0009 –datatype = BD} $ color
$ {color4} $ {hr} $ umbala
$ {color1} Ukuphuma kwelanga: $ {color3} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = SR} $ {alignr 2} $ {color1} Sunset: $ {color3} $ { yenza 3600 python ~ / Conky / script / conkyForecast.py –location = ARBA0009 –datatype = SS}
$ {voffset 15} $ {color1} Inyanga: $ {color4} $ {alignr 2} $ {color3} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –datatype = MP} $ color
$ {voffset -20} $ {offset 80} $ {color4} $ {font inyanga phases: size = 20} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 -datatype = MF} $ ifonti $ umbala
$ {color0} $ {hr} $ umbala
$ {voffset 5} $ {color2} IP: $ {alignc} $ umbala $ {addr eth0}
$ {color1} Phantsi: $ color $ {downspeed eth0} k / s $ {alignr 2} $ {color1} Phezulu: $ color $ {upspeed eth0} k / s
$ {color1} Iyonke: $ color $ {totaldown eth0} $ {alignr 2} $ {color1} Iyonke: $ color $ {totalup eth0}
$ {color1} Inbound: $ color $ {tcp_portmon 1 32767 count} $ {color1} Outbound: $ color $ {tcp_portmon 32768 61000 count} $ {alignr 2} $ {color1} Iyonke: $ color $ {tcp_portmon 1 65535 count}
$ {voffset 5} $ {color2} Unxibelelwano: $ color $ {tcp_portmon 32768 61000 count} $ {alignr 2} $ {color2} Service / Port $ color
$ {voffset 5} $ {tcp_portmon 32768 61000 umoya 0} $ {alignr 2} $ {tcp_portmon 32768 61000 inkonzo 0}
$ {tcp_portmon 32768 61000 umoya 1} $ {alignr 2} $ {tcp_portmon 32768 61000 inkonzo 1}
$ {tcp_portmon 32768 61000 umoya 2} $ {alignr 2} $ {tcp_portmon 32768 61000 inkonzo 2}
$ {tcp_portmon 32768 61000 umoya 3} $ {alignr 2} $ {tcp_portmon 32768 61000 inkonzo 3}
$ {tcp_portmon 32768 61000 umoya 4} $ {alignr 2} $ {tcp_portmon 32768 61000 inkonzo 4}
$ {tcp_portmon 32768 61000 umoya 5} $ {alignr 2} $ {tcp_portmon 32768 61000 rservice 5} $ color

Senza ifayile ~ / Conky / conkyforecast

gedit ~ / Conky / conkyforecast

kwaye sincamathisela oku kulandelayo ngaphakathi

imvelaphi hayi
eyakho_window ewe
eyakho_window_yokucaca ewe
eyakho_window_hints ezingakhange zihonjiswe, apha ngezantsi, zincangathi, tsiba_taskbar, tsiba_phepha
eyakho_efestile_ umbala omnyama
kabini_buffer ewe
use_spacer ekhohlo
sebenzisa_xft ewe
ifonti calibri: ubungakanani = 8
xftfont calibri: ubungakanani = 8
xftalpha 0.5
Uhlaziyo_okungena kwi-5.0
oonobumba abakhulu abayi- # ukuseta ku-ewe ukuba ufuna ukuba sonke isicatshulwa sibhalwe ngoonobumba abakhulu
Umda_wemida 3
umda_umda 9
umda_bubanzi 10
default_color emhlophe
default_outline_color emnyama
okungagqibekanga_i-color_color emnyama
umbala0 wecyan
umbala omnyama okhanyayo
umbala2 orenji
umbala omthubi
umbala4 ingqolowa
umbala5 umhlophe
umbala6 umhlophe
umbala7 umhlophe
umbala8 umhlophe
umbala9 umhlophe
ulungelelwaniso ezantsi_khohlo # okanye phezulu_khohlo, ezantsi_khohlo, ezantsi_ ekunene
isikhewu_x 10
isikhewu_ 35
i-text_buffer_size 1024 # sebenzisa 1024 kwisimo sezulu
hayi_buffers ewe # Ukukhupha iifayile kwifomathi kwimemori esetyenzisiweyo?
zoba_imida hayi
zoba_kumgca ewe # yandisa isicatshulwa ukuba ewe
zoba_imithunzi ewe # shadecolor emnyama

TEXT
$ {color4} $ {font calibri: size = 11} Uqikelelo olwandisiweyo $ font font $ color
$ {color0} $ {hr} $ umbala
$ {color4} $ {font calibri: size = 9} $ {execi 3600 python ~ / Conky / scripts / conkyForecast.py –location = ARBA0009 –template = / ikhaya / umsebenzisi / Conky / izikripthi / myweather.template} $ font $ umbala

senza ifayile ~ / Conky / conkymail

gedit ~ / Conky / conkymail

sincamathisela oku kulandelayo kwifayile

imvelaphi hayi
eyakho_window ewe
eyakho_window_yokucaca ewe
eyakho_window_hints ezingakhange zihonjiswe, apha ngezantsi, zincangathi, tsiba_taskbar, tsiba_phepha
eyakho_efestile_ umbala omnyama
kabini_buffer ewe
use_spacer ekhohlo
sebenzisa_xft ewe
ifonti calibri: ubungakanani = 8
xftfont calibri: ubungakanani = 8
xftalpha 0.5
Uhlaziyo_okungena kwi-5.0
oonobumba abakhulu abayi- # ukuseta ku-ewe ukuba ufuna ukuba sonke isicatshulwa sibhalwe ngoonobumba abakhulu
Umda_wemida 3
umda_umda 9
umda_bubanzi 10
default_color emhlophe
default_outline_color emnyama
okungagqibekanga_i-color_color emnyama
umbala0 wecyan
umbala omnyama okhanyayo
umbala2 orenji
umbala omthubi
umbala4 ingqolowa
umbala5 umhlophe
umbala6 umhlophe
umbala7 umhlophe
umbala8 umhlophe
umbala9 umhlophe
ulungelelwaniso ezantsi_khohlo # okanye phezulu_khohlo, ezantsi_khohlo, ezantsi_ ekunene
isikhewu_x 565
isikhewu_ 35
i-text_buffer_size 128 # sebenzisa 1024 kwisimo sezulu
hayi_buffers ewe # Ukukhupha iifayile kwifomathi kwimemori esetyenzisiweyo?
zoba_imida hayi
zoba_kumgca ewe # yandisa isicatshulwa ukuba ewe
zoba_imithunzi ewe # shadecolor emnyama

TEXT
$ {font calibri: size = 11} $ {alignc} $ {color4} Gmail
$ {color0} $ {hr} $ umbala
$ {font calibri: size = 11} $ {color4} Sine $ {color3} $ {execi 300 python ~ / Conky / scripts / mail / conkyEmail.py} $ {color4} email (s) $ ifonti

Senza ifayile kwi ~ / Conky / script / conkyForecast.py (kufuneka senze ifolda)

gedit ~ / Conky / izikripthi / conkyForecast.py

#! / usr / bin / python
# - * - ukufaka iikhowudi: utf-8 - * -
############ # ############################
# conkyForecast.py (ayisiyonto ilula) (kwakhona) python script yokuqokelela
# iinkcukacha zemozulu yangoku ukuba zisetyenziswe kwi-conky.
#
# Umbhali: Kaivalagi
# Yadalwa: 13/04/2008
# Uhlengahlengiso:
# 14/04/2008 Vumela uluhlu lwemihla yedatha yesimo sezulu
# 14/04/2008 Jonga unxibelelwano kwinkonzo ye xoap
# 18/04/2008 Vumela ukusetwa kweendawo zokuvelisa imveliso
# 18/04/2008 Vumela uqikelelo lobusuku nemini
# 18/04/2008 Inkxaso yendawo ekuyo imeko yekhowudi yokubhaliweyo «CC» ukhetho, ulindele ukuguqulelwa kolwimi lwesiSpanish
# 18/04/2008 Sebenzisa ukukhethwa kwedatha yeklasi kunokuvula i-xml, oku kudlula kwisidingo sokubuza idatha egciniweyo
# 19/04/2008 Yongeze imeko yespanish isicatshulwa- Enkosi uBruce M
# 19/04/2008 Yongeze isnumeric cheki kuzo zonke iziphumo zamanani kunye nesimamva seeyunithi
# 19/04/2008 Ifayile yeflethi eguqulweyo enegama lokufaka ikhowudi yendawo
# 19/04/2008 Yongeze ukuguqulwa kweentsuku zeentsuku zespanish nge-locale
# 20/04/2008 Yongeze ingxelo efanelekileyo yomyalelo wokuxoxa
# 20/04/2008 Yongezwe - ukhetho losuku olufutshane lweveki, ukuba unikwe usuku lwedatha yohlobo lwedatha olufinyeziweyo lube ngoonobumba abathathu
# 21/04/2008 Iinketho zendawo ezisisigxina kwimveliso yezulu
# 21/04/2008 Yongezwe –umzekelo wokukhetha ukuvumela ukuphuma kwesiko usebenzisa umnxeba omnye exec
# 21/04/2008 Yongezwe –ihideunits ukhetho lokususa, umzekelo, mph no-C kwimveliso
# 23/04/2008 Kususwe - ukhetho lwaseburhulumenteni kwitemplate, oku KUFUNEKA kusekwe njengokhetho oluqhelekileyo kwifowuni yeskripthi engasetyenziswanga kwifayile yetemplate.
# 23/04/2008 Ifundwe - ukhetho lwaseburhulumenteni kwitemplate, evumela ixabiso leetriki okanye zasebukhosini kuhlobo lwedatha nganye. Qaphela xa usebenzisa itemplate yelayini yomyalelo ukhetho alunakusebenza.
# 23/04/2008 Ukongezwa kwemveliso ekwazisa umsebenzisi ukuba indawo enikiweyo imbi
# 24/04/2008 Ukuphathwa okungafakwanga konxibelelwano, kuya kubuyela kwidatha egcinwe ngoku (ukuphosakela ukuba akukho cache ifumanekayo). Uvavanyo ngokuzama ukuvula xoap.weather.com
# 24/04/2008 I-Celsius eLungisiweyo kuguquko lwefahrenheit
# 06/05/2008 Ukuhlaziywa kwe-url esetyenziswe emva kokuba i-webservice ihlaziyiwe
# 09/05/2008 Ukudityaniswa kwemeko yangoku kunye nedatha yokuqikelela ingena kwifowuni enye
# 09/05/2008 Kongezwe ukuphuma nokutshona kwelanga kwii-database, ezi zichaphazela iimeko zangoku kunye nedatha yesimo sezulu.
# 09/05/2008 Isigaba senyanga esongeziweyo, ukufundwa kwebaromitha kunye nenkcazo yebarometer kuluhlu lwedatha, ezi zichaphazela kuphela iimeko ezikhoyo ngoku ke N / A kwimveliso eqikelelweyo
# 09/05/2008 Yongeza iinguqulelo zeyunithi zebarometer ukusuka kwi-mb ukuya kwii-intshi (yasebukhosini)
# 09/05/2008 Umbhalo ohlaziyiweyo wespanish-Enkosi uBruce M
# 10/05/2008 Yongeze idatha yendawo yesiFrentshi- Enkosi benpaka
# 12/05/2008 Yongeze i-BF entsha (ephethe ifonti) yedatha yokubonelela ngetolo (sebenzisa ifonti yeArrow.ttf) endaweni yokukhutshwa kwe-NSEW kwi-WD (kwicala lomoya)
# 12/05/2008 Ukuhlaziywa kwemveliso yeWD ukuze ibekho kwindawo ethile, okwangoku ixhasa isingesi kunye neSpanish- Enkosi uBruce M.
# 18/05/2008 Yongeze i-MF entsha (ifonti yenyanga) yedatha ukubonelela ngomlinganiswa wefonti yenyanga (abalinganiswa abachanekanga kwaye akukho font inikezelweyo okwangoku).
# 21/05/2008 Ngeemeko ezikhoyo ngoku i-datatype = ukhetho lwe-LT ngoku lubonisa «uziva ngathi» ubushushu kunokuba ubushushu bukho ngoku
#
# YONKE INTO:
# Dibanisa iifayile ze-pkl kwifayile / kwiklasi enye
# Yongeza ifonti yemozulu esekwe kwimveliso yesigaba senyanga esekwe kwidatha yenyanga
# ??? Ngaba zikhona ezinye iimfuno phaya?

ukungenisa sys, os, socket, urllib2, ixesha ledatha, ixesha
ukusuka kwi-xml
ukusuka kummiselo wokungenisa elizweni *
ukusuka ekuphumeni kokungenisa i-OptionParser
indawo yokungenisa
ukungenisa ngaphandle okubhaliweyo
ukungenisa pickle
ukusuka ekungeniseni izibalo *

I-APP = »conkyForecast.py»
I-DIR = os.path.dirname (__file__) + '/ locale'
ukufumana.bindtextdomain (APP, DIR)
ukufumana.textdomain (APP)
_ = ukufumana isicatshulwa

Iklasi CommandLineParser:

Isikhombi = Akukho

chaza __init __ (ngokwakho):

self.parser = InkethoParser ()
self.parser.add_option («- l», »- indawo», dest = »indawo», default = »UKXX0103 ″, type =» string », metavar =» CODE », help = u» ikhowudi yendawo yedatha yemozulu [ okungagqibekanga:% okungagqibekanga], Sebenzisa le url elandelayo ukumisela ikhowudi yendawo ngegama lesixeko:
self.parser.add_option ("- d", "- datatype", dest = "datatype", default = "HT", type = "string", metavar = "DATATYPE", help = u "[okungagqibekanga:% emiselweyo] Uhlobo lweedatha onokukhetha kuzo zezi: DW (Usuku lweveki), WF (Iziphumo zefonti yemozulu), LT (Uqikelelo: Ixesha eliphantsi, iXesha langoku: Iimvakalelo ezinje ngeTemp), i-HT (Uqikelelo: Ixesha Eliphezulu, Ixesha langoku: Ixesha Langoku), CC (Okwangoku Iimeko), i-CT (imiQathango yokubhaliweyo), i-PC (yokuThintela ukuNcitshiswa), i-HM (Ukufuma), i-WD (Isalathiso somoya), i-WS (Isantya somoya), i-WG (i-Wind Gust), i-CN (igama lesiXeko), i-SR (ukuphuma kwelanga), i-SS (ukutshona kwelanga), i-MP (isigaba senyanga), i-MF (ifonti yenyanga), i-BR (ukufundwa kwebaromitha), i-BD (inkcazo ye-barometer). Ayisebenzi kumgca wokuyalela xa usebenzisa itemplate. »)
self.parser.add_option («- s», »- usuku lokuqala», dest = »usuku lokuqala», type = »int», metavar = »INOMBOLO», nceda = u »chaza inani losuku lokuqala, ukuba ngaba iimeko ezikhoyo zishiyiwe Ayisebenzi kumgca wokuyalela xa usebenzisa itemplate. »)
self.parser.add_option ("- e", "- isiphelo sosuku", ukuphela = "isiphelo sosuku", uhlobo = "int", metavar = "INOMBOLO", nceda = u "chaza inombolo yosuku lokuphela, ukuba ishiyiwe kuphela idatha yosuku ayisebenzi kumgca wokuyalela xa usebenzisa itemplate. »)
self.parser.add_option («- S», »- izithuba», dest = »izithuba», type = »int», default = 1, metavar = »NUMBER», help = u »[default:% default] Ichaza Inani lezithuba phakathi kwemveliso ebekiweyo. Ayisebenzi kumgca wokuyalela xa usebenzisa iitemplate. »)
self.parser.add_option («- t», »- itemplate», dest = »itemplate», uhlobo = »umtya», metavar = »FILE», help = u »ichaza ifayile yetemplate yokuvelisa imveliso kwifowuni enye. Into ebonakalayo kwifayile ikwimo {–datatype = HT -startday = 1}. Oku kulandelayo kunokukhethwa kuyo nganye into: -datatype, -startday, -endday, -night, -shortweekday, -imperial, -hideunits, –Zithuba. Qaphela ukuba iifom ezimfutshane zokhetho azixhaswanga okwangoku! Akukho nanye kwezi ndlela esebenzayo kumgca wokuyalela xa usebenzisa itemplates. »)
self.parser.add_option («- L», »- indawo», dest = »indawo», uhlobo = »umtya», uncedo = u »ukugqithisa inkqubo yendawo yokufumana ulwimi (en = english, es = spanish, fr = isiFrentshi, kuseza) »)
self.parser.add_option ("- i", "- impiriyali", dest = "impiriyali", okungagqibekanga = Ubuxoki, isenzo = "ivenkile_yinyaniso", uncedo = u "cela iiyunithi zasebukhosini, ukuba iziphumo ezishiyiweyo zikwi-metric. Ayisebenzi umgca wokuyalela xa usebenzisa iitemplate. »)
self.parser.add_option («- n», »- ebusuku», dest = »ubusuku», okungagqibekanga = Ubuxoki, isenzo = »ivenkile_yinyaniso», uncedo = u »tshintshela kwimveliso yedatha yasebusuku, ukuba kungashiywanga ukuphuma kwemini. Ayisebenzi kumgca wokuyalela xa usebenzisa itemplate. »)
self.parser.add_option («- w», »- usuku olufutshane», dest = »usuku olufutshane», okungagqibekanga = Ubuxoki, isenzo = »ivenkile_yinyaniso», nceda = umgca wokuyalela xa usebenzisa iitemplate. »)
self.parser.add_option («- u», »- fihlaunits», dest = »fihlaunit», okungagqibekanga = Ubuxoki, isenzo = »ivenkile_yinyani», nceda = isabonisiwe. Ayisebenzi kwilayini yomyalelo xa usebenzisa itemplate. »)
self.parser.add_option ("- v", "- verbose", dest = "verbose", default = False, action = "store_true", help = u "request verbose output, akukho luvo luhle xa uqhuba nge-conky!" )
self.parser.add_option ("- r", "- refetch", dest = "refetch", default = False, action = "store_true", help = u "landa idatha ngaphandle kokuphela kwedatha")

def parse_args (ngokwakho):
(ukhetho, iargs) = self.parser.parse_args ()
buyela (ukhetho, args)

def print_help (ngokwakho):
buyela self.parser.print_help ()

iklasi WeatherData:
def __init __ (self, day_of_week, low, high, condition_code, condition_text, precip, humidity, wind_dir, wind_speed, wind_gusts, city, sunrise, sunset, moon_phase, moon_icon, bar_read, bar_desc):
usuku lwakho_we_week = u »» + usuku_lo_week
self.low = u »» + ephantsi
self.high = u »» + ephezulu
isimilo_ikhowudi = = »» + imeko_ikhowudi
isimilo_ sokubhaliweyo = u »» + condition_text
isiqu sakho.precip = u »» + precip
self.humidity = u »» + ukufuma
ngokwakho.wind_dir = u »» + wind_dir
ukuzimela.wind_speed = u »» + umoya_womoya
izixhobo zomoya eziziphefumlayo = u »» + zomoya
self.city = u »» + isixeko
ukuphuma kwelanga = u »» + ukuphuma kwelanga
sunset = u »» + ukutshona kwelanga
self.moon_phase = u »» + inyanga_phase
self.moon_icon = u »» + inyanga_ikon
ngokwakho.bar_read = u »» + bar_read
ngokwakho.bar_desc = u »» + bar_desc

Imozulu yeklasi:

iimeko_ okubhaliweyo = {
«0»: _ (u »iTornado»),
«1»: _ (u »iTropical Storm»),
«2»: _ (u »Inkanyamba»),
«3»: _ (u »Iindudumo ezinamandla»),
«4»: _ (u »Iindudumo»),
«5»: _ (u »Imvula exubileyo kunye nekhephu»),
«6»: _ (u »Imvula exubileyo kunye neSleet»),
«7»: _ (u »Imvula exutywayo»),
«8»: _ (u »Ingqele eqhaqhazelisa amazinyo»),
«9»: _ (u »Isithintelo»),
«10»: _ (u »Imvula ebandayo»),
«11»: _ (u »Iishawari»),
«12»: _ (u »Iishawari»),
«13»: _ (u »Iiflethi zekhephu»),
«14»: _ (u »Imvula ekhanyayo yekhephu»),
«15»: _ (u »Ukuvutha kwekhephu»),
«16»: _ (u »Ikhephu»),
«17»: _ (u »Isichotho»),
«18»: _ (u »Sleet»),
«19»: _ (u »Uthuli»),
«20»: _ (u »Inkungu»),
«21»: _ (u »Inkungu»),
«22»: _ (u »Umsi»),
«23»: _ (u »I-Blustery»),
«24»: _ (u »Umoya»),
«25»: _ (u »Ubandayo»),
«26»: _ (u »Kusibekele»),
«27»: _ (u »Uninzi lwamafu»),
«28»: _ (u »Uninzi lwamafu»),
«29»: _ (u »Kusibekele»),
«30»: _ (u »Kusibekele»),
«31»: _ (u »Cacisa»),
«32»: _ (u »Cacisa»),
«33»: _ (u »Ulungile»),
«34»: _ (u »Ulungile»),
«35»: _ (u »Imvula exubileyo kunye nesichotho»),
«36»: _ (u »Kushushu»),
«37»: _ (u »IiNdudumo ezizimeleyo»),
«38»: _ (u »Iindudumo ezisasazekileyo»),
«39»: _ (u »Iindudumo ezisasazekileyo»),
«40»: _ (u »Imvula ethe saa"),
«41»: _ (u »Ikhephu elinzima»),
«42»: _ (u »Imvula ehlakazekileyo yekhephu»),
«43»: _ (u »Ikhephu elinzima»),
«44»: _ (u »Kusibekele»),
«45»: _ (u »Iindudumo zemvula),
«46»: _ (u »Imvula yekhephu»),
«47»: _ (u »IiNdudumo ezizimeleyo»),
«Na»: _ (u »N / A»),
"-": _ (a ")
}

iimeko_text_es = {
«0»: _ (u »iTornado»),
«1»: _ (u »iTropical Storm»),
«2»: _ (u »Huracá¡n»),
«3»: _ (u »Izaqhwithi ezinamandla»),
«4»: _ (u »Izaqhwithi»),
«5»: _ (u »Imvula exubileyo kunye nekhephu»),
«6»: _ (u »Imvula exubileyo kunye neSleet»),
«7»: _ (u »Sleet»),
«8»: _ (u »Ingqele eqhaqhazelisa amazinyo»),
«9»: _ (u »Isithintelo»),
«10»: _ (u »Imvula ebandayo»), # okanye imvula ebandayo
«11»: _ (u »Iishawari»),
«12»: _ (u »Iishawari»),
«13»: _ (u »Ukukhanya kwekhephu»),
«14»: _ (u »Ukukhanya kwekhephu»),
«15»: _ (u »Ikhephu Blizzard»),
«16»: _ (u »Ikhephu»),
«17»: _ (u »Isichotho»),
«18»: _ (u »Sleet»),
«19»: _ (u »Powder»),
«20»: _ (u »Inkungu»),
«21»: _ (u »Inkungu»),
«22»: _ (u »Umsi»),
«23»: _ (u »Uqhwithela»),
«24»: _ (u »Ngumoya»),
«25»: _ (u »Fráo»),
«26»: _ (u »Kusibekele kakhulu»),
«27»: _ (u »Uninzi lwamafu»),
«28»: _ (u »Uninzi lwamafu»),
«29»: _ (u »Kusibekele»),
«30»: _ (u »Kusibekele»),
«31»: _ (u »Cacisa»),
«32»: _ (u »Cacisa»),
«33»: _ (u »Into enamafu»),
«34»: _ (u »Into enamafu»),
«35»: _ (u »Imvula ngeSichotho»),
«36»: _ (u »Ubushushu»),
«37»: _ (u »Izaqhwithi ezizimeleyo»),
«38»: _ (u »Izaqhwithi ezichaseneyo»),
«39»: _ (u »Izaqhwithi ezichaseneyo»),
«40»: _ (u »Imvula ethe saa"),
«41»: _ (u »Ikhephu elinzima»),
«42»: _ (u »Ubuthakathaka kunye nokuSasazeka kweKhephu»),
«43»: _ (u »Inamandla iNevada»),
«44»: _ (u »Amafu aSasazekileyo»),
«45»: _ (u »Izaqhwithi»),
«46»: _ (u »Ukuwa kweqhwa»),
«47»: _ (u »Izaqhwithi ezizimeleyo»),
«Na»: _ (u »N / A»),
"-": _ (a ")
}

iimeko_text_fr = {
«0»: _ (u »iTornade»),
«1»: _ (u »Tempête iTropicale»),
«2»: _ (okanye »Ouragan»),
«3»: _ (okanye »Orages Violents»),
«4»: _ (okanye »Orageux»),
«5»: _ (u »Iplagi et Neige»),
«6»: _ (u »Iplagi et Neige Mouillée»),
«7»: _ (u »Izinto eziguqukayo zeavec»),
«8»: _ (u »IBruine Givrante»),
«9»: _ (u »I-Bruine»),
«10»: _ (u »IPlagi yeGlacante»),
«11»: _ (u »Ukuchasana»),
«12»: _ (u »Ukuchasana»),
«13»: _ (u »uLégère Neige»),
«14»: _ (u »iForte Neige»),
«15»: _ (u »Tempête de Neige»),
«16»: _ (u »Neige»),
«17»: _ (u »Grêle»),
«18»: _ (u »Iplagi / Neige»),
«19»: _ (u »iNeage de poussière»),
«20»: _ (u »Brouillard»),
«21»: _ (u »Brume»),
«22»: _ (u »Fumée»),
«23»: _ (u »Tres Venteux»),
«24»: _ (u »Venteux»),
«25»: _ (u »Froid»),
«26»: _ (u »iNeageux»),
«27»: _ (u »Tres Nuageux»),
«28»: _ (u »Tres Nuageux»),
«29»: _ (u »iiNumiss Disséminés»),
«30»: _ (u »iiNumiss Disséminés»),
«31»: _ (u »Ubeau»),
«32»: _ (u »Ubeau»),
«33»: _ (u »iiBelles zeeklasikhi»),
«34»: _ (u »iiBelles zeeklasikhi»),
«35»: _ (u »iPlagi avec Grêle»),
«36»: _ (u »Chaleur»),
«37»: _ (okanye »I-Orages Isolés»),
«38»: _ (okanye »iiOrages Localisés»),
«39»: _ (okanye »iiOrages Localisés»),
«40»: _ (u »Averses Localisées»),
«41»: _ (u »Neige Lourde»),
«42»: _ (u »Tempête de Neige Iindawo zasekuhlaleni»),
«43»: _ (u »Neige Lourde»),
«44»: _ (u »iiNumiss Disséminés»),
«45»: _ (okanye »iiOrages»),
«46»: _ (u »Tempête de Neige»),
«47»: _ (okanye »I-Orages Isolés»),
«Na»: _ (u »N / A»),
"-": _ (a ")
}

imeko_weather_font = {
«0»: _ (u »W»),
«1»: _ (u »V»),
«2»: _ (u »W»),
«3»: _ (u »s»),
«4»: _ (u »p»),
«5»: _ (u »k»),
«6»: _ (u »k»),
«7»: _ (u »g»),
«8»: _ (u »g»),
«9»: _ (u »g»),
«10»: _ (u »h»),
«11»: _ (u »g»),
«12»: _ (u »g»),
«13»: _ (u »k»),
«14»: _ (u »k»),
«15»: _ (u »k»),
«16»: _ (u »k»),
«17»: _ (u »k»),
«18»: _ (u »k»),
«19»: _ (u »e»),
«20»: _ (u »e»),
«21»: _ (u »a»),
«22»: _ (u »d»),
«23»: _ (u »d»),
«24»: _ (u »d»),
«25»: _ (u »d»),
«26»: _ (u »e»),
«27»: _ (u »e»),
«28»: _ (u »e»),
«29»: _ (u »c»),
«30»: _ (u »c»),
«31»: _ (u »a»),
«32»: _ (u »a»),
«33»: _ (u »b»),
«34»: _ (u »b»),
«35»: _ (u »k»),
«36»: _ (u »a»),
«37»: _ (u »f»),
«38»: _ (u »f»),
«39»: _ (u »f»),
«40»: _ (u »g»),
«41»: _ (u »k»),
«42»: _ (u »k»),
«43»: _ (u »k»),
«44»: _ (u »b»),
«45»: _ (u »g»),
«46»: _ (u »k»),
«47»: _ (u »f»),
«Na»: _ (u »»),
"-": _ (okanye "")
}

iimeko_moon_font = {
«0»: _ (u »1 ″),
«1»: _ (u »N»),
«2»: _ (u »O»),
«3»: _ (u »P»),
«4»: _ (u »Q»),
«5»: _ (u »R»),
«6»: _ (u »S»),
«7»: _ (u »T»),
«8»: _ (u »U»),
«9»: _ (u »V»),
«10»: _ (u »W»),
«11»: _ (u »X»),
«12»: _ (u »Y»),
«13»: _ (u »Z»),
«14»: _ (u »0 ″),
«15»: _ (u »0 ″),
«16»: _ (u »A»),
«17»: _ (u »B»),
«18»: _ (u »C»),
«19»: _ (u »D»),
«20»: _ (u »E»),
«21»: _ (u »F»),
«22»: _ (u »G»),
«23»: _ (u »H»),
«24»: _ (u »mna»),
«25»: _ (u »J»),
«26»: _ (u »K»),
«27»: _ (u »L»),
«28»: _ (u »M»),
«29»: _ (u »1 ″),
«Na»: _ (u »»),
"-": _ (okanye "")
}

Usuku_olo_veki = {
"Namhlanje": _ (okanye "Namhlanje"),
NgoMvulo »: _ (u» Mvulo »),
NgoLwesibini »: _ (u» Lwesibini »),
NgoLwesithathu »: _ (u» uLwesithathu »),
NgoLwesine »: _ (u» Lwesine »),
NgoLwesihlanu »: _ (u» NgoLwesihlanu »),
"NgoMgqibelo": _ (u "Saturday"),
"NgeCawa": _ (u "NgeCawa")
}

usuku_lo_week_short = {
"Namhlanje": _ (u "Ngoku"),
NgoMvulo »: _ (u» Mon »),
NgoLwesibini »: _ (u» Tue »),
"NgoLwesithathu": _ (u "Wed"),
NgoLwesine »: _ (u» Thu »),
NgoLwesihlanu »: _ (u» Fri »),
"NgoMgqibelo": _ (u "Sat"),
"NgeCawa": _ (u "Langa")
}

Usuku_olo_week_es = {
"Namhlanje": _ (u "namhlanje"),
"NgoMvulo": _ (u "Mvulo"),
NgoLwesibini »: _ (u» Lwesibini »),
NgoLwesithathu »: _ (u» uLwesithathu »),
NgoLwesine »: _ (u» Lwesine »),
NgoLwesihlanu »: _ (u» ngolwesiHlanu »),
"NgoMgqibelo": _ (u "Saturday"),
"NgeCawa": _ (u "NgeCawa")
}

Usuku_e_week_short_es = {
"Namhlanje": _ (u "namhlanje"),
"NgoMvulo": _ (u "mon"),
NgoLwesibini »: _ (u» ulwandle »),
NgoLwesithathu »: _ (u» wed »),
NgoLwesine »: _ (u» Lwesine »),
NgoLwesihlanu »: _ (u» fri »),
"NgoMgqibelo": _ (u "uhleli"),
"NgeCawe": _ (u "dom")
}

Usuku_olwiveki_fr = {
«Namhlanje»: _ (u »Aujourd'hui»),
NgoMvulo »: _ (u» Lundi »),
NgoLwesibini »: _ (u» Mardi »),
NgoLwesithathu »: _ (u» Mercredi »),
NgoLwesine »: _ (u» Jeudi »),
NgoLwesihlanu »: _ (u» Vendredi »),
"NgoMgqibelo": _ (u "Samedi"),
"NgeCawa": _ (u "Dimanche")
}

Usuku_e_week_short_fr = {
«Namhlanje»: _ (u »Auj»),
"NgoMvulo": _ (u "Mon"),
NgoLwesibini »: _ (u» Mar »),
"NgoLwesithathu": _ (u "Mer"),
NgoLwesine »: _ (u» Jeu »),
NgoLwesihlanu »: _ (u» Yiza »),
"NgoMgqibelo": _ (u "Sam"),
"NgeCawa": _ (u "Dim")
}

kuthwala_arrow_font = {
«N»: _ (u »i»),
«NNE»: _ (u »j»),
«NE»: _ (u »k»),
«ENE»: _ (u »l»),
«E»: _ (u »m»),
«ESE»: _ (u »n»),
"SE": _ (u "o"),
«SSE»: _ (u »p»),
«S»: _ (u »a»),
«SSW»: _ (u »b»),
«SW»: _ (u »c»),
"WSW": _ (u "d"),
«W»: _ (u »e»),
"WNW": _ (u "f"),
«NW»: _ (u »g»),
«NNW»: _ (u »h»),
«N / A»: _ (u »«)
}

ukuthwala_text_es = {
«N»: _ (u »N»),
«NNE»: _ (u »NNE»),
«NE»: _ (u »NE»),
«ENE»: _ (u »ENE»),
«E»: _ (u »E»),
«ESE»: _ (u »ESE»),
«SE»: _ (u »SE»),
"SSE": _ (u "SSE"),
"Yabo"),
"SSW": _ (u "SSO"),
«SW»: _ (u »SO»),
"WSW": _ (u "WOW"),
«W»: _ (u »O»),
«WNW»: _ (u »ONO»),
«NW»: _ (u »HAYI»),
«NNW»: _ (u »NNO»),
«N / A»: _ (u »N \ A»)
}

ukuthwala_text_fr = {
«N»: _ (u »N»),
«NNE»: _ (u »NNE»),
«NE»: _ (u »NE»),
«ENE»: _ (u »ENE»),
«E»: _ (u »E»),
«ESE»: _ (u »ESE»),
«SE»: _ (u »SE»),
"SSE": _ (u "SSE"),
"Yabo"),
"SSW": _ (u "SSO"),
«SW»: _ (u »SO»),
"WSW": _ (u "WOW"),
«W»: _ (u »O»),
«WNW»: _ (u »ONO»),
«NW»: _ (u »HAYI»),
«NNW»: _ (u »NNO»),
«N / A»: _ (u »N \ A»)
}

iklasi yelizwe jikelele:

iimeko zangoku = []
imini_forecast = []
ubushushu_busuku = []

indawo = "kwi"

ukhetho = Akukho
Imozuluxmldoc = «»

TEMP_FILEPATH_CURRENT = "/tmp/conkyForecast-c-LOCATION.pkl"
TEMP_FILEPATH_DAYFORECAST = "/ tmp/conkyForecast-df-LOCATION.pkl"
TEMP_FILEPATH_NIGHTFORECAST = "/tmp/conkyForecast-nf-LOCATION.pkl"
I-EXPIRY_MINUTES = 30
UKUQINISEKISAT_SPACING = u »«

def __init __ (ngokwakho, ukhetho):

ukhetho lwakho = ukhetho

ukuba self.options.locale == Akukho:
zama:
# self.locale = indawo.getdefaultlocale () [0] [0: 2]
self.locale = «es» #ukungenisa lo mgca ukunyanzela indawo yaseSpain
# self.locale = "fr" #ukungenisa lo mgca ukunyanzela indawo yaseFrance
ngaphandle:
shicilela "indawo ayimiselwanga"
enye:
# self.locale = self.options.locale
self.locale = «es» #ukungenisa lo mgca ukunyanzela indawo yaseSpain
# self.locale = "fr" #ukungenisa lo mgca ukunyanzela indawo yaseFrance

ukuba ukuzimela.options.verbose == Kuyinyani:
shicilela >> sys.stdout, "indawo ebekwe ku", self.locale

def GetText (ngokwakho, nodelist):
rc = ""
yeNode kwi-nodelist:
ukuba node.nodeType == node.TEXT_NODE:
rc = rc + indawo yedatha
buyela rc

def getSpaces (ngokwakho, izithuba):
umtya = u »»
ukuba izithuba == Akukho:
umtya = isiqu sakho
enye:
for i kuluhlu (0, izithuba + 1):
umtya = umtya + u »«
umtya wokubuyisa

def isNumeric (ngokwakho, umtya):
zama:
idummy = ukudada (umtya)
buyela Inyaniso
ngaphandle:
buyela Ubuxoki

def isConnectionAvailable (ngokwakho):
# Qinisekisa ukuba singafikelela kwiseva ye-mozulu.com ngokuvula i-url
zama:
Usock = urllib2.urlopen ('http://xoap.weather.com')
Cima ()
buyela Inyaniso
ngaphandle:
buyela Ubuxoki

def fumana iBearingText (isiqu sakho, ukuzala):
ukuthwala = ukudada (ukuthwala)
ukuba uthwele <11.25:
buyela u »N»
Elif ethwele <33.75:
buyela u »NNE»
Elif ethwele <56.25:
buyela u »NE»
Elif ethwele <78.75:
buyela »JAN»
Elif ethwele <101.25:
buyela u »E»
Elif ethwele <123.75:
buyela u »ESE»
Elif ethwele <146.25:
buyela u »SE»
Elif ethwele <168.75:
buyela u »SSE»
Elif ethwele <191.25:
buyela u »S»
Elif ethwele <213.75:
buyela u »SSW»
Elif ethwele <236.25:
buyela u »SW»
Elif ethwele <258.75:
buyela u »WSW»
Elif ethwele <281.25:
buyela u »W»
Elif ethwele <303.75:
buyela u »WNW»
Elif ethwele <326.25:
buyela u »NW»
Elif ethwele <348.75:
buyela u »NNW»
enye:
buyisela «N / A»

def Guqula iCelsiusToFahrenheit (ngokwakho, itemp):
buyisela str (int (kumgangatho (((edadayo (itempile) * 9.0) /5.0) +32)))

def convertKilometresToMiles (ngokwakho, dist):
buyisela str (int (kumgangatho (wokudada) (0.621371192))

def convertMillibarsToInches (ngokwakho, mb):
buyisela umtya (int (kumgangatho (wokudada (mb) / 33.8582)))

def GetTemplateList (ngokwakho, itemplate):

itemplatelist = []

ye template_part kwi template.split («{«):
ukuba template_part! = «»:
ye template_part kwi template_part.split ("}"):
ukuba template_part! = «»:
itemplatelist.append (u »» + icandelo template)

buyisela itemplatelist

def getOutputText (isiqu sakho, uhlobo lwedatha, usuku lokuqala, usuku lokuphela, ubusuku, usuku olufutshane, ubukhosi, ukufihla, iindawo)
#zama:
imveliso = u »

# chaza iiyunithi zangoku zokuphuma
ukuba ukufihla == Ubuxoki:
ukuba impiriyali == Ubuxoki:
ixesha = u »° C»
isantyaunit = u »kph»
uxinzelelounit = u »mb»
enye:
ixesha = u »° F»
isantyaunit = u »mph»
uxinzelelounit = u »kwi
enye:
tempunit = u »°»
isantyaunit = u »»
uxinzelelo =>

ukuba umhla wokuqalisa == Akukho: # iimeko ezikhoyo

ukuba uhlobo lwedatha == "DW":
ukuba u-self.locale == "ngu":
ukuba usuku olufutshane == Liyinyani:
iziphumo = Isimo sezuluText.day_of_week_short_es [self.current_conditions [0] .day_of_week
enye:
iziphumo = Isimo sezuluText.day_of_week_es [iziqu ezizimeleyo ezenzekayo [0] .day_of_week]
elif self.locale == "fr":
ukuba usuku olufutshane == Liyinyani:
iziphumo = Isimo sezuluText.day_of_week_short_fr [self.current_conditions [0] .day_of_week]
enye:
iziphumo = Isimo sezuluText.day_of_week_fr [iimeko ezizimeleyo ezikhoyo ngoku [0] .day_of_week]
enye:
ukuba usuku olufutshane == Liyinyani:
iziphumo = Isimo sezuluText.day_of_week_short [iziqu zangokokuzenzekelayo [0] .day_of_week]
enye:
iziphumo = Isimo sezuluText.day_of_week [iziqu zangokwemeko yangoku [0] .day_of_week]
elif datatype == "WF": # ifonti yemozulu
imveliso = Isimo sezuluText.conditions_weather_font [self.current_conditions [0] .condition_code]
elif datatype == "LT":
umtya = iziqu_zangoku_iimeko [0] ezantsi
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = umtya
i-edat yolwazi == "HT":
umtya = iziqu_zangoku_iimeko [0] .high
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = umtya
elif datatype == "CC":
ukuba u-self.locale == "ngu":
imveliso = Isimo sezuluText.conditions_text_es [self.current_conditions [0] .condition_code]
elif self.locale == "fr":
imveliso = Isimo sezuluText.conditions_text_fr [self.current_conditions [0] .condition_code]
enye:
imveliso = Isimo sezuluText.conditions_text [self.current_conditions [0] .condition_code]
elif datatype == "CT":
imveliso = iziqu_zangoku_iimeko [0] .imeko_ yokubhaliweyo
elif datatype == "PC":
umtya = iziqu_zangoku_iimeko [0] .precip
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = umtya
elif datatype == "HM":
umtya = iziqu_zangoku_iimeko [0] .umsi
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = umtya
elif datatype == "WD":
umtya = iziqu_zangoku_iimeko [0] .wind_dir
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = self.getBearingText (umtya)

ukuba u-self.locale == "ngu":
iziphumo = ImozuluText.bearing_text_es [umtya]
elif self.locale == "fr":
imveliso = ImozuluText.bearing_text_fr [umtya]
enye:
imveliso = umtya

elif datatype == "BF":
umtya = iziqu_zangoku_iimeko [0] .wind_dir
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = ImozuluText.bearing_arrow_font [self.getBearingText (umtya)]
imveliso = umtya
elif datatype == "WS":
umtya = iziqu_zangoku_imeko [0] .wind_speed
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = umtya
elif datatype == "WG":
umtya = iziqu_zangoku_iimeko [0] .emimoya yomoya
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = umtya
elif datatype == "CN":
iziphumo = iziqu_zangoku_iimeko [0]
elif datatype == "SR":
Iziphumo = iziqu_zangoku_iimeko [0] zelanga
elif datatype == "SS":
iziphumo = self.crento_imeko [0] .sunset
elif datatype == "MP":
iziphumo = self.current_conditions [0] .moon_phase
elif datatype == "MF":
imveliso = Isimo sezuluText.conditions_moon_font [self.current_conditions [0] .moon_icon]
elif datatype == "BR":
umtya = iziqu_zangoku_iimeko [0]
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = uqobo.convertMillibarsToInches (umtya)
umtya = umtya + uxinzelelounit
imveliso = umtya
elif datatype == "BD":
iziphumo = self.crentrent_conditions [0] .bar_desc
enye:
imveliso = "\ NERROR: Uhlobo lwedatha olungaziwayo luceliwe"

enye: # uqikelelo lwedatha

ukuba ukuphela komhla == Akukho: # ukuba akukho siphelo sibekiweyo sisebenzise umhla wokuqalisa
umhla wokugqibela = usuku lokuqalisa

ukuba ubusuku == Kuyinyani: # isibikezelo sasebusuku siyafuneka

usuku_enani kuluhlu (usuku lokuqala, usuku lokuphela + 1):

ukuba uhlobo lwedatha == "DW":
ukuba u-self.locale == "ngu":
ukuba usuku olufutshane == Liyinyani:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_short_es [self.night_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_es [self.night_forecast [day_number] .day_of_week]
elif self.locale == "fr":
ukuba usuku olufutshane == Liyinyani:
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.day_of_week_short_fr [self.night_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_fr [self.night_forecast [day_number] .day_of_week]
enye:
ukuba usuku olufutshane == Liyinyani:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_short [self.night_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week [self.night_forecast [day_number] .day_of_week]
elif datatype == "WF": # ifonti yemozulu
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.conditions_weather_font [self.night_forecast [day_number] .condition_code]
elif datatype == "LT":
umtya = self.night_forecast [day_number] .low
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya

i-edat yolwazi == "HT":
umtya = self.night_forecast [day_number] .high
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "CC":
ukuba u-self.locale == "ngu":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_text_es [self.night_forecast [day_number] .condition_code]
elif self.locale == "fr":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_text_fr [self.night_forecast [day_number] .condition_code]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_text [self.night_forecast [day_number].
elif datatype == "CT":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number]. Condition_text
elif datatype == "PC":
umtya = self.night_forecast [day_number] .precip
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "HM":
umtya = self.night_forecast [imini_nombolo] .umsi
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "WD":
umtya = self.night_forecast [day_number] .wind_dir
ukuba u-self.locale == "ngu":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.bearing_text_es [string]
elif self.locale == "fr":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.bearing_text_fr [umtya]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya

elif datatype == "BF":
ukuphuma = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.bearing_arrow_font [self.night_forecast [day_number] .wind_dir
elif datatype == "WS":
umtya = self.night_forecast [day_number] .wind_speed
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "WG":
umtya = self.night_forecast [imini_nombolo] .emimoya yomoya
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "CN":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number] .city
elif datatype == "SR":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number].
elif datatype == "SS":
)
elif datatype == "MP":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number] .moon_phase
elif datatype == "MF":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + Isimo sezuluText.conditions_moon_font [self.night_forecast [day_number] .moon_icon]
elif datatype == "BR":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number] .bar_read
elif datatype == "BD":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.night_forecast [day_number] .bar_desc
enye:
imveliso = "\ NERROR: Uhlobo lwedatha olungaziwayo luceliwe"
aphule

enye: # imini uqikelelo

usuku_enani kuluhlu (usuku lokuqala, usuku lokuphela + 1):

ukuba uhlobo lwedatha == "DW":
ukuba u-self.locale == "ngu":
ukuba usuku olufutshane == Liyinyani:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_short_es [self.day_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_es [self.day_forecast [day_number] .day_of_week]
elif self.locale == "fr":
ukuba usuku olufutshane == Liyinyani:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_short_fr [self.day_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week_fr [self.day_forecast [day_number] .day_of_week]
enye:
ukuba usuku olufutshane == Liyinyani:
ukuphuma = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.day_of_week_short [self.day_forecast [day_number] .day_of_week]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (space) + WeatherText.day_of_week [self.day_forecast [day_number] .day_of_week]
elif datatype == "WF": # ifonti yemozulu
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_weather_font [self.day_forecast [day_number] .condition_code]
elif datatype == "LT":
umtya = self.day_forecast [day_number]
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
i-edat yolwazi == "HT":
umtya = self.day_forecast [day_number] .high
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertCelsiusToFahrenheit (umtya)
umtya = umtya + tempunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "CC":
ukuba u-self.locale == "ngu":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_text_es [self.day_forecast [day_number] .condition_code]
elif self.locale == "fr":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_text_fr [self.day_forecast [day_number] .condition_code]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.conditions_text [self.day_forecast [day_number] .condition_code]
elif datatype == "CT":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number]. Condition_text
elif datatype == "PC":
umtya = self.day_forecast [day_number] .precip
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "HM":
umtya = self.day_forecast [day_number] .umsi
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
umtya = umtya + u »%»
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "WD":
umtya = self.day_forecast [day_number] .wind_dir

ukuba u-self.locale == "ngu":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.bearing_text_es [string]
elif self.locale == "fr":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.bearing_text_fr [umtya]
enye:
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya

elif datatype == "BF":
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + WeatherText.bearing_arrow_font [self.day_forecast [day_number] .wind_dir]
elif datatype == "WS":
umtya = self.day_forecast [day_number] .wind_speed
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "WG":
umtya = self.day_forecast [imini_nombolo] .emimoya yomoya
ukuba uqobo.isNumeric (umtya) == Kuyinyani:
ukuba i-imperial = Yinyani:
umtya = self.convertKilometresToMiles (umtya)
umtya = umtya + isantyaunit
imveliso = ukuphuma + ngokwakho.getSpaces (izithuba) + umtya
elif datatype == "CN":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number] .city
elif datatype == "SR":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number].
elif datatype == "SS":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number].
elif datatype == "MP":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number] .moon_phase
elif datatype == "MF":
ukuphuma = ukuphuma + ngokwakho.getSpaces (izithuba) + ImozuluText.conditions_moon_font [self.day_forecast [day_number] .moon_icon]
elif datatype == "BR":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number] .bar_read
elif datatype == "BD":
imveliso = ukuphuma + ngokwakho.getSpaces (space) + self.day_forecast [day_number] .bar_desc
enye:
iziphumo = u »\ INGXAKI: Uhlobo lwedatha olungaziwayo luceliwe»
aphule

imveliso = u »» + output.strip (u »«) # ukulahleka kwezithuba ezihamba phambili / ezihamba phambili
Buyisela imveliso

# ngaphandle:
#print "getOutputText: Impazamo engalindelekanga:", sys.exc_info () [0]

def fumanaOutputTextFromTemplate (ngokwakho, itemplate):
#zama:

# amaqhosha edatha yetemplate
DATATYPE_KEY = "- uhlobo lwedatha ="
STARTDAY_KEY = "- usuku lomhla wokugqibela ="
ENDDAY_KEY = "- umhla wokugqibela ="
NIGHT_KEY = "-obusuku"
SHORTWEEKDAY_KEY = "-shortweekday"
IMPERIAL_KEY = "- yasebukhosini"
HIDEUNITS_KEY = "-iiyunithi"
SPACES_KEY = "- izithuba ="

imveliso = u »

ukhethofound = Bubuxoki

#layisha ifayile
zama:
ifayileinput = evulekile (self.options.template)
template = ifayileinput.read ()
ifayile yefayile.close ()
ngaphandle:
imveliso = u »Ifayile yeTemplate ayifumanekanga!

itemplatelist = isiqu sakho.getTemplateList (template)

# vumela uhambe kuluhlu lwetemplate kwaye unqume imveliso yento nganye efunyenweyo
for i kuluhlu (0, len (templatelist) -1):

pos = itemplatelist [i] .fumana (DATATYPE_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
isithuba = pos + len (DATATYPE_KEY)
uhlobo lwedatha = itemplatelist [i] [pos: pos + 4]. umtya («}»), umcu («{«). umcu («-«).
enye:
uhlobo lwedatha = Akukho

pos = itemplatelist [i] .fumana (STARTDAY_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
isithuba = pos + len (STARTDAY_KEY)
usuku lokuqala = int (itemplatelist [i] [pos: pos + 4]. umtya ("}"). umcu ("{"). umcu ("-").
enye:
usuku lokuqala = Akukho

pos = itemplatelist [i] .fumana (ENDDAY_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
isithuba = pos + len (ENDDAY_KEY)
usuku lokuphela = int (itemplatelist [i] [pos: pos + 4]. strip ("}"). strip ("{"). strip ("-"). strip (""))
enye:
umhla wokugqibela = Akukho

pos = itemplatelist [i] .fumana (NIGHT_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
ubusuku = Kuyinyani
enye:
ubusuku = Ubuxoki

pos = itemplatelist [i] .fumana (SHORTWEEKDAY_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
usuku olufutshane = Kuyinyani
enye:
usuku olufutshane = Ubuxoki

pos = itemplatelist [i] .fumana (IMPERIAL_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
impiriyali = Yinyani
enye:
impiriyali = Ubuxoki

pos = itemplatelist [i] .fumana (HIDEUNITS_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
fihlaunits = Kuyinyani
enye:
fihlaunits = Ubuxoki

pos = itemplatelist [i] .fumana (SPACES_KEY)
ukuba pos! = -1:
ukhethofound = Luyinyani
isithuba = pos + len (SPACES_KEY)
izithuba = int (itemplatelist [i] [pos: pos + 4]. umtya («}»), umcu («{«). umcu («-«).
enye:
izithuba = 1

ukuba ukhetho lufunyenwe == Kuyinyani:
templatelist [i] = self.getOutputText (uhlobo lwedatha, usuku lokuqala, usuku lokuphela, ubusuku, usuku olufutshane, ubukhosi, ukufihla, izithuba)
ukhethofound = Bubuxoki

# yiya kuluhlu oluhambelana nemveliso ngoku enabemi
yento ekwitemplatelist:
imveliso = imveliso + yento

Buyisela imveliso

# ngaphandle:
#print "getOutputTextFromTemplate: Impazamo engalindelekanga:", sys.exc_info () [0]

def fetchData (ngokwakho):

# soloko ulanda idatha yeetriki, sebenzisa imisebenzi yencoko kule datha
file_path_current = self.TEMP_FILEPATH_CURRENT.replace ("LOCATION", self.options.location)
file_path_dayforecast = self.TEMP_FILEPATH_DAYFORECAST.replace ("INDAWO", self.options.location)
file_path_nightforecast = isiqu sakho.TEMP_FILEPATH_NIGHTFORECAST.replace ("LOCATION", self.options.location)

ukuba u-self.isConnectionAvailable () == Ubuxoki:
ukuba os.path.exists (file_path_current):
RefetchData = Ubuxoki
Ngenye indlela: # akukho nxibelelwano, akukho cache, bang!
phrinta "Akukho nxibelelwano lwe-intanethi olukhoyo kwaye akukho datha yemozulu egciniweyo ekhoyo."
elif self.options.refetch == Yinyani:
RefetchData = Kuyinyani
enye:
# Ngaba idatha ifuna ukubuyiswa kwakhona?
ukuba os.path.exists (file_path_current):
lastmodDate = ixesha. ixesha lexesha (os.stat (ifayile_path_current) [ST_MTIME])
expiryDate = (datetime.datetime.today () - datetime.timedelta (minutes = self.EXPIRY_MINUTES)) ixesha elifanelekileyo ()

ukuba ukuphela komhla> umhla wokugqibela:
RefetchData = Kuyinyani
enye:
RefetchData = Ubuxoki
enye:
RefetchData = Kuyinyani

# landa idatha yeemeko ezikhoyo, nokuba zivela kwiwebhusayithi okanye 'ngokuzikhethela'
ukuba RefetchData == Kuyinyani:

# fumana iimeko zangoku zedatha kwinkonzo ye-xoap
zama:

# http://xoap.weather.com/weather/local/UKXX0103?cc=*&dayf=5&link=xoap∏=xoap&par=1061785028&key=e374effbfd74930b

url = 'http://xoap.weather.com/weather/local/' + self.options.location + '? cc = * & dayf = 8 & link = xoap∏ = xoap & par = 1061785028 & isitshixo = e374effbfd74930b & iyunithi = m '
ukuba ukuzimela.options.verbose == Kuyinyani:
phrinta >> sys.stdout, «ukulanda idatha yemozulu kwi«, url

Cima = urllib2.urlopen (url)
xml = usock.read ()
Cima ()
ngokwakho.weatherxmldoc = minidom.parseString (xml)
ngaphandle:
phrinta "fetchData: Impazamo engalindelekanga:", sys.exc_info () [0]
phrinta "Ayikwazi ukuqhakamshelana nomthombo wemozulu weemeko zangoku"

# xelela umsebenzisi ukuba indawo imbi…
funyanwa = xml.find ("indawo engasebenziyo ibonelelwe")
ukuba ifunyenwe! = -1:
shicilela "indawo engasebenziyo ibonelelwe"

# buza idatha yemozulu, layisha kulwakhiwo lweklasi kwaye uyikhethe
zama:

# lungiselela uluhlu lweenkcukacha zemozulu
iziqu zakho.current_conditions = []
umhla we-forecast = []
ngesithuba sezulu sasebusuku = []

# ukuqokelela idatha ngokubanzi
Imozulu_n = self.weatherxmldoc.documentElement
indawo_n = yemozulu_n.getElementsByTagName ('indawo') [0]
isixeko_n = indawo_n.getElementsByTagName ('dnam') [0]
isixeko = self.getText (isixeko_n.childNode)

# ukuqokelela idatha yangoku yeemeko
day_of_week = u »Namhlanje»
ithambeka = u »N / A»
ukuphuma kwelanga_n = indawo_n.getElementsByTagName ('ilanga') [0]
ukuphuma kwelanga = ukuzenzekelayo.getText (ukuphuma kwelanga_n.childNode)
ukutshona kwelanga_n = indawo_n.getElementsByTagName ('ilanga') [0]
ukutshona kwelanga = ukuzenzekelayo.getText (sunset_n.childNode)
current_condition_n = weather_n.getElementsByTagName ('cc') [0]
I-current_desc_n = yangoku_imeko_n.getElementsByTagName ('t') [0]
yangoku_desc = uqobo.getText (current_desc_n.childNode)
I-current_code_n = yangoku_imeko_n.getElementsByTagName ('icon') [0]
ikhowudi yangoku = self.getText (ikhowudi_yangoku_n.childNode)
current_temp_n = yangoku_imeko_n.getElementsByTagName ('tmp') [0]
current_temp = uqobo.getText (current_temp_n.childNode)
current_temp_feels_n = current_condition_n.getElementsByTagName ('flik') [0]
I-current_temp_feels = self.getText (yangoku_temp_feels_n.childNode)
bar_n = yangoku_imeko_n.getElementsByTagName ('bar') [0]
bar_read_n = bar_n.getElementsByTagName ('r') [0]
bar_read = self.getText (bar_read_n.childNode)
bar_desc_n = bar_n.getElementsByTagName ('d') [0]
bar_desc = self.getText (bar_desc_n.childNode)
wind_n = yangoku_imeko_n.getElementsByTagName ('umoya') [0]
wind_speed_n = wind_n.getElementsByTagName ('s') [0]
wind_speed = ngokwakho.getText (wind_speed_n.childNodes)
wind_gust_n = wind_n.getElementsByTagName ('gust') [0]
wind_gusts = self.getText (Wind_gust_n.childNode)
wind_dir_n = wind_n.getElementsByTagName ('d') [0]
isikhombisi-ndlela = self.getText (wind_dir_n.childNode)
humidity_n = yangoku_imeko_n.getElementsByTagName ('hmid') [0]
ukufuma = self.getText (humidity_n.childNode)
inyanga_n = yangoku_imeko_n.getElementsByTagName ('inyanga') [0]
inyanga_icon_n = inyanga_n.getElementsByTagName ('icon') [0]
inyanga_ikon = ukuzimela.getText (inyanga_icon_n.childNode)
inyanga_phase_n = inyanga_n.getElementsByTagName ('t') [0]
inyanga_phase = ukuzenzekelayo.getText (inyanga_phase_n.childNode)
current_conditions_data = WeatherData (day_of_week, current_temp_feels, current_temp, current_code, current_desc, precip, humidity, wind_direction, wind_speed, wind_gusts, city, sunrise, sunset, moon_phase, moon_icon, bar_read, bar_desc)
iimeko zakho zangoku.append (iimeko ezikhoyo_edatha)

# ukuqokelela idatha yesimo sezulu
bar_read = u »N / A»
bar_desc = u »N / A»
inyanga_phase = u »N / A»
inyanga_icon = u »na»
forecast_n = weather_n.getElementsByTagName ('usuku') [0]
day_nodes = forecast_n.getElementsByTagName ('usuku')

usuku day_node:
usuku_of_week = usuku.getAttribute ('t')
imini_yomnyaka = usuku.getAttribute ('dt')
high_temp_n = usuku.getElementsByTagName ('molo') [0]
high_temp = uqobo.getText (high_temp_n.childNode)
low_temp_n = usuku.getElementsByTagName ('phantsi') [0]
low_temp = uqobo.getText (low_temp_n.childNode)

ukuphuma kwelanga_n = usuku.getElementsByTagName ('ilanga') [0]
ukuphuma kwelanga = ukuzenzekelayo.getText (ukuphuma kwelanga_n.childNode)
Ukutshona kwelanga_n = usuku.getElementsByTagName ('ilanga') [0]
ukutshona kwelanga = ukuzenzekelayo.getText (sunset_n.childNode)

Ukuqikelelwa kwedatha ethile yosuku olunye
ixesha losuku_n = usuku.getElementsByTagName ('inxenye') [0] # usuku
imeko_code_n = ixesha losuku_n.getElementsByTagName ('icon') [0]
imeko_ikhowudi = self.getText (imeko_code_n.childNode)
imeko_n = ixesha losuku_n.getElementsByTagName ('t') [0]
imeko = uqobo.getText (imeko_n.childNode)
precip_n = emini_n.getElementsByTagName ('ppcp') [0]
precip = uqobo.getText (precip_n.childNode)
humidity_n = emini_n.getElementsByTagName ('hmid') [0]
ukufuma = self.getText (humidity_n.childNode)
umoya_n = ixesha lasemini_n.getElementsByTagName ('umoya') [0]
wind_speed_n = wind_n.getElementsByTagName ('s') [0]
wind_speed = ngokwakho.getText (wind_speed_n.childNodes)
wind_direction_n = wind_n.getElementsByTagName ('t') [0]
isikhombisi-ndlela = self.getText (wind_direction_n.childNode)
wind_gusts_n = wind_n.getElementsByTagName ('gust') [0]
wind_gusts = self.getText (i-wind_gusts_n.childNodes)
day_forecast_data = WeatherData (day_of_week, low_temp, high_temp, condition_code, condition, precip, humidity, wind_direction, wind_speed, wind_gusts, isixeko, ukuphuma kwelanga, ukutshona kwelanga, inyanga_phase, inyanga_icon, bar_read, bar_desc)
yenza.day_forecast.append (day_forecast_data)

Isibikezelo ebusuku # idatha ethile
emini_n = imini.getElementsByTagName ('inxenye') [1] # ubusuku
imeko_code_n = ixesha losuku_n.getElementsByTagName ('icon') [0]
imeko_ikhowudi = self.getText (imeko_code_n.childNode)
imeko_n = ixesha losuku_n.getElementsByTagName ('t') [0]
imeko = uqobo.getText (imeko_n.childNode)
precip_n = emini_n.getElementsByTagName ('ppcp') [0]
precip = uqobo.getText (precip_n.childNode)
humidity_n = emini_n.getElementsByTagName ('hmid') [0]
ukufuma = self.getText (humidity_n.childNode)
umoya_n = ixesha lasemini_n.getElementsByTagName ('umoya') [0]
wind_speed_n = wind_n.getElementsByTagName ('s') [0]
wind_speed = ngokwakho.getText (wind_speed_n.childNodes)
wind_direction_n = wind_n.getElementsByTagName ('t') [0]
isikhombisi-ndlela = self.getText (wind_direction_n.childNode)
wind_gusts_n = wind_n.getElementsByTagName ('gust') [0]
wind_gusts = self.getText (i-wind_gusts_n.childNodes)
ubusuku_forecast_data = WeatherData (imini_yesonto, itempile esezantsi, itempile ephezulu, imeko_ikhowudi, imeko, imvula, ukufuma, ulwalathiso lomoya, ispeed_speed, imimoya yomoya, isixeko, ukuphuma kwelanga, ukutshona kwelanga, inyanga_phase, inyanga_icon, bar_read, bar_desc)
ubusuku.forecast.append (ebusuku_forecast_data)

# pickle idatha yexesha elizayo!
ifayileoutput = open (file_path_current, 'w')
pickle.dump (self.current_conditions, fileoutput)
ifayile ifayile.close ()

ifayileoutput = evulekileyo (ifayile_path_dayforecast, 'w')
pickle.dump (self.day_forecast, ifayile yokuphuma)
ifayile ifayile.close ()

ifayileoutput = open (file_path_nightforecast, 'w')
pickle.dump (self.night_forecast, ifayile)
ifayile ifayile.close ()

ngaphandle:
phrinta "fetchData: Impazamo engalindelekanga:", sys.exc_info () [0]
phrinta "Ayikwazi ukubuza imibuzo ngedatha yemozulu"

enye: # landa idatha yemozulu kwiifayile zeklasi ezikhethiweyo
ukuba ukuzimela.options.verbose == Kuyinyani:
phrinta >> sys.stdout, «Ukulanda idatha yemozulu kwifayile:«, file_path_current

ifayileinput = vula (ifayile_path_current, 'r')
self.current_conditions = pickle.load (ifayile yokufaka)
ifayile yefayile.close ()

ukuba ukuzimela.options.verbose == Kuyinyani:
phrinta >> sys.stdout, "ukulanda idatha yesimo sezulu sosuku kwiifayile:", file_path_dayforecast, file_path_nightforecast

ifayileinput = vula (ifayile_path_dayforecast, 'r')
self.day_forecast = pickle.load (ifayile yokufaka)
ifayile yefayile.close ()

ukuba ukuzimela.options.verbose == Kuyinyani:
phrinta >> sys.stdout, "ukulanda idatha yesimo sezulu sosuku kwiifayile:", file_path_nightforecast, file_path_nightforecast

fileinput = open (file_path_nightforecast, 'r')
self.night_forecast = pickle.load (ifayile yokufaka)
ifayile yefayile.close ()

def imvelisoData (ngokwakho):
#zama:

ukuba self.options.template! = Akukho:

iziphumo = self.getOutputTextFromTemplate (self.options.template)

enye:

iziphumo = self.getOutputText (self.options.datatype, self.options.startday, self.options.endday, self.options.night, self.options.shortweekday, self.options.imperial, self.options.hideunits, self. iinketho. izithuba)

ukuprinta imveliso.encode ("utf-8")

# ngaphandle:
#print «outputData: Impazamo engalindelekanga:«, sys.exc_info () [0]

ukuba __name__ == "__yintloko__":

Isikhombi = CommandLineParser ()
(ukhetho, iargs) = iparser.parse_args ()

ukuba iinketho.verbose == Kuyinyani:
phrinta >> sys.stdout, "indawo:", iinketho. indawo
phrinta >> sys.stdout, "impiri:", iinketho.imperial
shicilela >> sys.stdout, "uhlobo lwedatha:", iinketho zedatha
phrinta >> sys.stdout, "ebusuku:", iinketho zobusuku
phrinta >> sys.stdout, "usuku lokuqala:", iinketho.startday
phrinta >> sys.stdout, "usuku lokuphela:", iinketho.endday
shicilela >> sys.stdout, "izithuba:", iinketho
phrinta >> sys.stdout, "verbose:", options.verbose
shicilela >> sys.stdout, "phinda uhlaziye:", ongakhetha.refetch

# yenza into yemozulu entsha
Imozulu = Isimo sezulu seHlabathi (ukhetho)
imozulu.fetchData ()
Imozulu.outputData ()

Senza ifayile ~ / Conky / script / myweather.template

gedit ~ / Conky / izikripthi / i-myweather.template

sincamathisela oku kulandelayo ngaphakathi:

{–Datatype = DW –startday = 1}: {–datatype = CC -startday = 1}
{–Datatype = HT -startday = 1} / {–datatype = LT -startday = 1} Umoya osuka {–datatype = WD -startday = 1} to {–datatype = WS -startday = 1}
Ukufuma: {–datatype = HM –startday = 1} Imvula: {–datatype = PC -startday = 1}
Ukuphuma kwelanga: {–datatype = SR -dayday = 1} Ukutshona kwelanga: {–datatype = SS -startday = 1}
————————————————--
{–Datatype = DW –startday = 2}: {–datatype = CC -startday = 2}
{–Datatype = HT -startday = 2} / {–datatype = LT -startday = 2} Umoya osuka {–datatype = WD -startday = 2} to {–datatype = WS -startday = 2}
Ukufuma: {–datatype = HM –startday = 2} Imvula: {–datatype = PC -startday = 2}
Ukuphuma kwelanga: {–datatype = SR -dayday = 2} Ukutshona kwelanga: {–datatype = SS -startday = 2}
————————————————--
{–Datatype = DW –startday = 3}: {–datatype = CC -startday = 3}
{–Datatype = HT -startday = 3} / {–datatype = LT -startday = 3} Umoya osuka {–datatype = WD -startday = 3} to {–datatype = WS -startday = 3}
Ukufuma: {–datatype = HM –startday = 3} Imvula: {–datatype = PC -startday = 3}
Ukuphuma kwelanga: {–datatype = SR -dayday = 3} Ukutshona kwelanga: {–datatype = SS -startday = 3}
————————————————--
{–Datatype = DW –startday = 4}: {–datatype = CC -startday = 4}
{–Datatype = HT -startday = 4} / {–datatype = LT -startday = 4} Umoya osuka {–datatype = WD -startday = 4} to {–datatype = WS -startday = 4}
Ukufuma: {–datatype = HM –startday = 4} Imvula: {–datatype = PC -startday = 4}
Ukuphuma kwelanga: {–datatype = SR -dayday = 4} Ukutshona kwelanga: {–datatype = SS -startday = 4}

Senza ifayile ~ / Conky / izikripthi / imeyile / conkyEmail.py (kufuneka senze ifolda yeposi)

gedit ~ / Conky / izikripthi / imeyile / conkyEmail.py

kwaye uncamathisele oku kulandelayo ngaphakathi:

ukungenisa ngaphakathi
ukungenisa umtya

#Faka igama lakho lomsebenzisi kunye negama lokugqitha apha ngezantsi ngaphakathi kwezicatshulwa kabini
# umz. igama lomsebenzisi = »igama lomsebenzisi» kunye negama lokugqitha
igama lomsebenzisi = »YAKHO_USUARIO_SINARROBA«
igama eligqithisiweyo = »LAKHO_KE«

com = »wget -O - https: //» + igama lomsebenzisi + »:» + igama eligqithisiweyo + »@ mail.google.com / imeyile / ifidi / iatom –isiqinisekiso sokungakhangeli»

temp = os. ukuvula (com)
umyalezo = isonka ()
Isalathiso = umtya. »)
isalathiso2 = umtya. »)
fc = int (msg [isalathiso + 11: index2])

ukuba fc == 0:
shicilela "0 entsha"
enye:
shicilela str (fc) + »entsha»

Ke ngoku uneefayile ezisi-7:

Kwincwadi eneenkcukacha: ~
-> .Startconky << - yenza ukuba isebenze

Kwincwadi eneenkcukacha: ~ / Conky
-> ukudibanisa
-> Ingqondo yesimo sezulu
-> ikhonkco

nakwincwadi eneenkcukacha: ~ / Conky / script
-> conkyForecast.py << - yenza isebenze
-> iteyiphu yam

nakwincwadi eneenkcukacha: ~ / Conky / script / mail
conkyEmail.py << - yenza ukuba isebenze

Yiyo leyo, ukucaciswa, apho isithi / ikhaya / umsebenzisi / ... igama lakho lomsebenzisi liya kwinxalenye apho idatha ye-Gmail iya khona, ndibonisile ngemibala apho kufuneka ubeke khona idatha yakho.

Ukubulala inkqubo ye-conky bhalela ikhonsoli

ukubulala conky

ukuqhuba ukubhala ubhalele ikhonsoli

//startconky

Nje ukuba yonke into ihlengahlengiswe, ukuba ufuna ikhonkco ukuqala iseshoni nganye

Inkqubo-> Ukukhetha-> Iiseshini kunye neenkqubo zokuqalisa siyongeza

Ngegama singabhala uConky, ngolandelelwano ./.startconky ngaloo nto izakuqala ngalo lonke ixesha uvula ipc.

Yiyo ke, ndiyathemba ukuba iyakunceda.


Umxholo wenqaku uyabambelela kwimigaqo yethu imigaqo yokuziphatha yokuhlela. Ukuxela impazamo cofa apha.

Yiba ngowokuqala ukuphawula

Shiya uluvo lwakho

Idilesi yakho ye email aziyi kupapashwa. ezidingekayo ziphawulwe *

*

*

  1. Uxanduva lwedatha: UMiguel Ángel Gatón
  2. Injongo yedatha: Ulawulo lwe-SPAM, ulawulo lwezimvo.
  3. Umthetho: Imvume yakho
  4. Unxibelelwano lwedatha: Idatha ayizukuhanjiswa kubantu besithathu ngaphandle koxanduva lomthetho.
  5. Ukugcinwa kweenkcukacha
  6. Amalungelo: Ngalo naliphi na ixesha unganciphisa, uphinde uphinde ucime ulwazi lwakho.