[Python] Verifica di aggiornamento File
Buongiorno a tutti, Ho realizzato uno script che partendo da un singolo file di template, ovvero un file html con markup definito da me; distribuisce parti di codice in vari file all'inerno di un cms. ma questo avviene solo alla pressione del tasto invio nella shell interattiva.. che durante la lavorazione di un progetto si moltiplica per centinaia di volte. la mia domanda è la seguente : è possibile che questo avvenga in automatico ad esempio ogni volta che salvo il template? come posso fare un listener sull'aggiornamento del file? Grazie in anticipo :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
2012/6/20 Lorenzo Macchiavelli > la mia domanda è la seguente : è possibile che questo avvenga in > automatico ad esempio > ogni volta che salvo il template? come posso fare un listener > sull'aggiornamento del file? > potrebbe interessarti? http://pyinotify.sourceforge.net/ Dò per scontato che sei su linux Ciao Fabrizio ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ciao Grazie mille, per la cronaca alla fine ho risolto con questo script che fa solo uso delle librerie native.. import time, os f = open(r"c:\...template.html","r") while True: line = f.readline() if not line: time.sleep(1) print( 'Nothing New') else: print ('Call Function: ') Ciao ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
On Wed, Jun 20, 2012 at 5:28 PM, Lorenzo Macchiavelli < lmacchiave...@gmail.com> wrote: > Ciao Grazie mille, per la cronaca alla fine ho risolto > con questo script che fa solo uso delle > librerie native.. > > import time, os > > f = open(r"c:\...template.html","r") > while True: >line = f.readline() >if not line: > time.sleep(1) > print( 'Nothing New') >else: > print ('Call Function: ') > E funziona? Hai provato con due modifiche successive? E se cancelli una linea? -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
> > >> E funziona? Hai provato con due modifiche successive? E se cancelli una >> linea? > > Effettivamente ho solo aggiunto!! :) No no ho risolto! ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il 20 giugno 2012 11:49, Lorenzo Macchiavelli ha scritto: > Buongiorno a tutti, > > Ho realizzato uno script che partendo da un singolo file di template, ovvero > un file html > con markup definito da me; distribuisce parti di codice in vari file > all'inerno di un cms. > > ma questo avviene solo alla pressione del tasto invio nella shell > interattiva.. > che durante la lavorazione di un progetto si moltiplica per centinaia di > volte. > > la mia domanda è la seguente : è possibile che questo avvenga in automatico > ad esempio > ogni volta che salvo il template? come posso fare un listener > sull'aggiornamento del file? > > Grazie in anticipo :) Oltre al gia menzionato pyinotify, potrebbe interessarti questa mia recipe: http://code.activestate.com/recipes/577968-log-watcher-tail-f-log/?in=user-4178764 --- Giampaolo https://code.google.com/p/pyftpdlib/ https://code.google.com/p/psutil/ https://code.google.com/p/pysendfile/ ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
-BEGIN PGP SIGNED MESSAGE- Hash: SHA1 Il 20/06/2012 17:28, Lorenzo Macchiavelli ha scritto: > Ciao Grazie mille, per la cronaca alla fine ho risolto > con questo script che fa solo uso delle > librerie native.. > > import time, os > > f = open(r"c:\...template.html","r") > while True: >line = f.readline() >if not line: > time.sleep(1) > print( 'Nothing New') >else: > print ('Call Function: ') > Puoi anche più semplicemente controllare la data di ultima modifica del file, per vedere se è stato modificato. Ciao Manlio -BEGIN PGP SIGNATURE- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAk/iHZMACgkQscQJ24LbaUQyTwCgmtjiUBNpcldx3s7WrpOJ9xoW GPYAni22CDAo3h7Z57bj33HTx6WMMJBA =Xtyy -END PGP SIGNATURE- ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
On 20 June 2012 20:59, Manlio Perillo wrote: > Puoi anche più semplicemente controllare la data di ultima modifica del > file, per vedere se è stato modificato. > Beh, allora a questo punto è meglio farsi un hash md5 del file e immagazzinarlo da qualche parte. E' piu sicuro!!! :-) Rimani sempre con le librerie native. Ciao Fabrizio ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
2012/6/21 Fabrizio Mancini > On 20 June 2012 20:59, Manlio Perillo wrote: > >> Puoi anche più semplicemente controllare la data di ultima modifica del >> file, per vedere se è stato modificato. >> > Beh, allora a questo punto è meglio farsi un hash md5 del file e > immagazzinarlo da qualche parte. > E' piu sicuro!!! :-) Rimani sempre con le librerie native. > Beh, uno conto è controllare la data di un file ogni secondo, un altro conto e aprirlo, leggerlo tutto e calcolare l'MD5, sempre ogni secondo :-) Io andrei di data di ultima modifica. Non vedo perché dovrebbe essere meno sicuro. Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
2012/6/21 Marco Beri > Beh, uno conto è controllare la data di un file ogni secondo, un altro > conto e aprirlo, leggerlo tutto e calcolare l'MD5, sempre ogni secondo :-) > Io andrei di data di ultima modifica. Non vedo perché dovrebbe essere > meno sicuro. > Mi ero perso l'"ogni secondo" :-) se questo è il requisito beh allora concordo con te! :-) Ciao f ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
2012/6/21 Fabrizio Mancini > 2012/6/21 Marco Beri > >> Beh, uno conto è controllare la data di un file ogni secondo, un altro >> conto e aprirlo, leggerlo tutto e calcolare l'MD5, sempre ogni secondo :-) >> Io andrei di data di ultima modifica. Non vedo perché dovrebbe essere >> meno sicuro. >> > Mi ero perso l'"ogni secondo" :-) > Personalmente quando faccio una modifica mi seccherebbe dover aspettare 10 secondi per vedere il risultato, per cui è un tempo che ho detto io. In realtà, essendo in sviluppo, farei anche meno :-) Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ok !! Allora Vado di data ogni secondo :)! ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
On Thu, 21 Jun 2012 09:30:02 +0200, Lorenzo Macchiavelli wrote: Ok !! Allora Vado di data ogni secondo :)! Il polling è una soluzione inferiore a notify. Di molto. -- Daniele Varrazzo - Develer S.r.l. http://www.develer.com ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
2012/6/21 Daniele Varrazzo > On Thu, 21 Jun 2012 09:30:02 +0200, Lorenzo Macchiavelli wrote: > >> Ok !! Allora Vado di data ogni secondo :)! >> > > Il polling è una soluzione inferiore a notify. Di molto. Certamente. Concordo anche sul "molto". Ma: 1) stiamo parlando di ambiente di sviluppo (vuole vedere subito le modifiche mentre cambia i template) 2) preferiva usare le librerie di sistema Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Ok Funziona perfettamente! :) OldFile = "" CurFile = "" def controlla(): global OldFile, CurFile if OldFile != CurFile: time.sleep(1) creaSkin() controlla() else: time.sleep(1) CurFile = time.ctime(os.path.getmtime(file)) controlla() def creaSkin(): ... ... OldFile = time.ctime(os.path.getmtime(file)) CurFile = time.ctime(os.path.getmtime(file)) Grazie per i consigli! :) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21/giu/2012, alle ore 12:02, Lorenzo Macchiavelli ha scritto: > Ok Funziona perfettamente! :) > > OldFile = "" > CurFile = "" > > def controlla(): > global OldFile, CurFile > > if OldFile != CurFile: > time.sleep(1) > creaSkin() > controlla() > > else: > time.sleep(1) > CurFile = time.ctime(os.path.getmtime(file)) > controlla() > > > def creaSkin(): > ... > ... > OldFile = time.ctime(os.path.getmtime(file)) > CurFile = time.ctime(os.path.getmtime(file)) No. Non funzionerà. Lo scoprirai da solo tra poco. ;-) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
No! Lo sto già usando! Funziona perfettamente! :) 2012/6/21 Marco Beri > Il giorno 21/giu/2012, alle ore 12:02, Lorenzo Macchiavelli > ha scritto: > > > Ok Funziona perfettamente! :) > > > > OldFile = "" > > CurFile = "" > > > > def controlla(): > > global OldFile, CurFile > > > > if OldFile != CurFile: > > time.sleep(1) > > creaSkin() > > controlla() > > > > else: > > time.sleep(1) > > CurFile = time.ctime(os.path.getmtime(file)) > > controlla() > > > > > > def creaSkin(): > > ... > > ... > > OldFile = time.ctime(os.path.getmtime(file)) > > CurFile = time.ctime(os.path.getmtime(file)) > > > No. Non funzionerà. > > Lo scoprirai da solo tra poco. > > ;-) > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21/giu/2012, alle ore 12:12, Lorenzo Macchiavelli ha scritto: > No! Lo sto già usando! Funziona perfettamente! :) Scommettiamo? -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
:) Si effettivamente nel pezzettino che ho postato , setto Old E Current assieme! cosa che non ho fatto nel codice che sta girando funzionante! ;D Lorenzo Macchiavelli web designer Il giorno 21 giugno 2012 12:16, Marco Beri ha scritto: > Il giorno 21/giu/2012, alle ore 12:12, Lorenzo Macchiavelli > ha scritto: > > > No! Lo sto già usando! Funziona perfettamente! :) > > Scommettiamo? > > -- > http://beri.it/ - Un blog > http://beri.it/i-miei-libri/ - Qualche libro > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21 giugno 2012 12:16, Marco Beri ha scritto: > Il giorno 21/giu/2012, alle ore 12:12, Lorenzo Macchiavelli > ha scritto: > > > No! Lo sto già usando! Funziona perfettamente! :) > > Scommettiamo? > guardando l'orologio mi sa che siamo prossimi all'ora X :-) ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21/giu/2012, alle ore 12:26, Marco De Paoli ha scritto: Il giorno 21 giugno 2012 12:16, Marco Beri ha scritto: > Il giorno 21/giu/2012, alle ore 12:12, Lorenzo Macchiavelli > ha scritto: > > > No! Lo sto già usando! Funziona perfettamente! :) > > Scommettiamo? > guardando l'orologio mi sa che siamo prossimi all'ora X :-) :-D ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21/giu/2012, alle ore 12:18, Lorenzo Macchiavelli ha scritto: > :) Si effettivamente nel pezzettino che ho postato , > setto Old E Current assieme! cosa che non ho fatto nel codice che sta girando > funzionante! ;D Il problema non è quello. Se usi il programma a lungo incontrerai il vero bug. Riduci il tempo di attesa dello sleep e lo incontri pure prima. Ciao. Marco. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Lorenzo Macchiavelli web designer Il giorno 21 giugno 2012 12:34, Marco Beri ha scritto: > Il giorno 21/giu/2012, alle ore 12:18, Lorenzo Macchiavelli > ha scritto: > > > :) Si effettivamente nel pezzettino che ho postato , > > setto Old E Current assieme! cosa che non ho fatto nel codice che sta > girando > > funzionante! ;D > > Il problema non è quello. > > Se usi il programma a lungo incontrerai il vero bug. > > Riduci il tempo di attesa dello sleep e lo incontri pure prima. > > Ciao. > Marco. > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
> > Nooo! c'è un limite di chiamate ad una funzione? > ancora sta girando!!.. > > > Il giorno 21 giugno 2012 12:34, Marco Beri ha > scritto: > > Il giorno 21/giu/2012, alle ore 12:18, Lorenzo Macchiavelli >> ha scritto: >> >> > :) Si effettivamente nel pezzettino che ho postato , >> > setto Old E Current assieme! cosa che non ho fatto nel codice che sta >> girando >> > funzionante! ;D >> >> Il problema non è quello. >> >> Se usi il programma a lungo incontrerai il vero bug. >> >> Riduci il tempo di attesa dello sleep e lo incontri pure prima. >> >> Ciao. >> Marco. >> ___ >> Python mailing list >> Python@lists.python.it >> http://lists.python.it/mailman/listinfo/python >> > > > > ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Il giorno 21/giu/2012, alle ore 12:41, Lorenzo Macchiavelli < lmacchiave...@gmail.com> ha scritto: Nooo! c'è un limite di chiamate ad una funzione? ancora sta girando!!.. Non esattamente. Ma un limite alle chiamate ricorsive sì. Prova questo codice: def funz(): funz() funz() Funziona? Ciao. Marco. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Verifica di aggiornamento File
Lorenzo Macchiavelli web designer Il giorno 21 giugno 2012 12:51, Marco Beri ha scritto: > > Il giorno 21/giu/2012, alle ore 12:41, Lorenzo Macchiavelli < > lmacchiave...@gmail.com> ha scritto: > > Nooo! c'è un limite di chiamate ad una funzione? ancora sta girando!!.. > > > Non esattamente. Ma un limite alle chiamate ricorsive sì. > > Prova questo codice: > > def funz(): > funz() > > funz() > > > Funziona? > > Ciao. > Marco. > No!! non funziona! e a appena smesso di girare per questo motivo! Questo mi distrubbe moralmente! :) Molto BEne! Ciao > ___ > Python mailing list > Python@lists.python.it > http://lists.python.it/mailman/listinfo/python > > ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python