Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SCRIPT PYTHON] Exif Organizer
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page Previous  1, 2  
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools)
View previous topic :: View next topic  
Author Message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Wed Jan 12, 2005 10:59 pm    Post subject: Reply with quote

Panda wrote:

cmq ti sconsiglio l'uso di os.popen anche per mkdir e mv. Puoi fare tutto questo col modulo os stesso... anche se funziona IMHO non e' la migliore via per fare operazioni sui file... per il semplice motivo che os.popen legge lo stout del processo, ma non ti ritorna ad esempio nessun codice. Al limite os.system() ti ritornerebbe un return code per capire se l'operazione e' andata a buon fine o meno... ma tanto vale os.mkdir() che casomai ti solleverebbe una eccezione da catturare con try: except.

Ho usato os.mkdir(), inoltre ho scoperto qualche funzioncina simpatica in os.path ;)


Panda wrote:
Sono d'accordo sui parametri... un po' meno sul raggruppare o meno in procedure la visualizzazione dell'help e della versione. IMHO trovo piu' comodo e pulito raggrupparle in procedure, piuttosto che riempire il costrutto if. Ma e' ovviamente questione di stile personale.

Forse ho esagerato con le procedure, ma la mia intenzione era di tenere lo script pulito.
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Thu Jan 13, 2005 2:33 am    Post subject: Reply with quote

EXIF ORGANIZER - 0.45
*) Utilizza optparse.OptionParser per le opzioni da riga di comando.
*) Aggiunta l'opzione -c (--copy), che copia (piuttosto che spostare) le foto nelle varie sotto directory
*) Utilizza shutil.move piuttosto che richiamare il comando mv (rende lo script più portabile)

La variabile copy_move è un puntatore a funzione (Ma è geniale questo linguaggio!), a copy o a move a seconda che l'utente abbia passato l'opzione -c (--copy) o meno.
Ho fatto così, per evitare di ripetere il controllo all'interno del for, tanto si copieranno o si sposteranno tutti i file.
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
mouser
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1418
Location: Milano

PostPosted: Thu Jan 13, 2005 11:05 am    Post subject: Reply with quote

OK, ho capito, devo mettermi a maneggiare con python!
Essendo un grandissimo stimatore (nonche', per tirarmela un po', conoscitore :lol: ) di C, sentire parlare di puntatori a funzione tende a farmi sbavare un pochettino.... speriamo di non rovinare la tastiera :lol:

Comunque complimenti per lo script
Ciriciao
mouser :wink:
_________________
Della serie: "Informatica for dummies":

Io: "Premi il tasto Invio" - Risp: "Ma il tasto Invio è quello con scritto Enter sopra?"
Io: "Scrivi T maiuscolo" - Risp: "Questa tastiera non ha le lettere maiuscole..."
Back to top
View user's profile Send private message
Momentime
Tux's lil' helper
Tux's lil' helper


Joined: 08 Sep 2003
Posts: 111
Location: Italy

PostPosted: Thu Jan 13, 2005 5:56 pm    Post subject: Reply with quote

Prova a dare un'occhiata a shutil.copyfile -- è il corrispondente di shutil.move, solo che copia. Funziona più o meno allo stesso modo =)

[OT]
Tra un po' posto anche il mio programma per rinominare file tipo "asd qwe" in "asd_qwe" =)
[/OT]
Back to top
View user's profile Send private message
Panda
Apprentice
Apprentice


Joined: 31 Jul 2003
Posts: 223
Location: Cremona <=> Catania

PostPosted: Thu Jan 13, 2005 10:26 pm    Post subject: Reply with quote

mouser wrote:
OK, ho capito, devo mettermi a maneggiare con python!
Con tutto il rispetto.... ci hai perso tempo! :P
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Thu Jan 13, 2005 10:49 pm    Post subject: Reply with quote

EXIF ORGANIZER - 0.5
*) Utilizza shutil.copy piuttosto che richiamare il comando cp (rende lo script più portabile)
*) Create le funzioni hasEXIF e getShotDate per rendere script più umanamente leggibile
*) Qualche eccezione *gestita* (nello spostamento/copia del file e nella creazione della directory).
*) Completamente in *inglese* (anche i nomi delle variabili/funzioni)


PS: Ma a voi *bippa*? (la stringa "\a", a me no, boh...dovrebbe, penso).
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
codadilupo
Advocate
Advocate


Joined: 05 Aug 2003
Posts: 3134

PostPosted: Thu Jan 13, 2005 10:58 pm    Post subject: Reply with quote

xoen wrote:
PS: Ma a voi *bippa*? (la stringa "\a", a me no, boh...dovrebbe, penso).


si', bippa ;-)

Coda
_________________
# emerge -C gelmini
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu Jan 13, 2005 11:29 pm    Post subject: Reply with quote

Panda wrote:
mouser wrote:
OK, ho capito, devo mettermi a maneggiare con python!
Con tutto il rispetto.... ci hai perso tempo! :P


Che significa?


EDIT:
Invito il programmatore del progetto a non chiamare il proprio lavoro script, infatti la comunita' python si sente sminuita, i lavori sono programmi, python e' un linguaggio di programmazione e non di scripting :) Quandi hai portabilita' multipiattaforma, interfacce verso almeno 4 librerie grafiche, e tutto quello che hanno anche gli altri linguaggio di programmazione riconosciuti :) non possiamo chiamarlo linguaggio di scripting :) [I programmi possono essere compilati volendo]
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Thu Jan 13, 2005 11:42 pm    Post subject: Reply with quote

federico wrote:
Panda wrote:
mouser wrote:
OK, ho capito, devo mettermi a maneggiare con python!
Con tutto il rispetto.... ci hai perso tempo! :P


Che significa?

Presumo voglia significare "E l'hai capito solo ora??", poi non saprei.

federico wrote:

EDIT:
Invito il programmatore del progetto a non chiamare il proprio lavoro script, infatti la comunita' python si sente sminuita, i lavori sono programmi, python e' un linguaggio di programmazione e non di scripting :) Quandi hai portabilita' multipiattaforma, interfacce verso almeno 4 librerie grafiche, e tutto quello che hanno anche gli altri linguaggio di programmazione riconosciuti :) non possiamo chiamarlo linguaggio di scripting :) [I programmi possono essere compilati volendo]

In effetti trovo python un gran bel linguaggio...
...Non era per offendere nessuno :)...sai com'è, essendo interpretato.
(c'avevo pensato prima) Qualche info sulla compilazione? Compila in binario, o in una specie di bytecode alla java?
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Thu Jan 13, 2005 11:56 pm    Post subject: Reply with quote

xoen wrote:
Qualche info sulla compilazione? Compila in binario, o in una specie di bytecode alla java?

Il vero pythonista di famiglia e' mio fratello come torna gli domando qualche informazione aggiuntiva + dettagliata, so che si puo' fare e l'ho visto fare ma non so bene come ^_^
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Fri Jan 14, 2005 12:02 am    Post subject: Reply with quote

federico wrote:
EDIT:
Invito il programmatore del progetto a non chiamare il proprio lavoro script, infatti la comunita' python si sente sminuita, i lavori sono programmi, python e' un linguaggio di programmazione e non di scripting :)

Aprire gEdit, menù Visualizza --> Modalità di evidenziazione --> Script ... LOL (O no? :oops: )
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
federico
Advocate
Advocate


Joined: 18 Feb 2003
Posts: 3270
Location: Italy, Milano

PostPosted: Fri Jan 14, 2005 12:12 am    Post subject: Reply with quote

xoen wrote:
federico wrote:
EDIT:
Invito il programmatore del progetto a non chiamare il proprio lavoro script, infatti la comunita' python si sente sminuita, i lavori sono programmi, python e' un linguaggio di programmazione e non di scripting :)

Aprire gEdit, menù Visualizza --> Modalità di evidenziazione --> Script ... LOL (O no? :oops: )


Penso che alla comunita' python non gli freghi di quello che pensa gedit :) (Maledetto gedit ora scrivo ai produttori per lamentarmi :) :) :) )Per altro non ho mai visto com'e' fatto gedit, in grafica solitamente uso scite
Code:

*  app-editors/scite
      Latest version available: 1.6.2
      Latest version installed: 1.6.2
      Size of downloaded files: 1,113 kB
      Homepage:    http://www.scintilla.org
      Description: A very powerful editor for programmers
      License:     PYTHON


Facevo notare questa cosa perche' il vero pythonista ci tiene ^^ Da qualche parte si puo' trovare quello che dice il fondatore di python, guido van rossum (il quale ha l'ultimo e insindacabile giudizio sullo sviluppo di python) , se lo trovo lo posto !

Vado a nanna anche io ^^
_________________
Sideralis www.sideralis.org
Pic http://blackman.amicofigo.com/gallery
Arduino http://www.arduino.cc
Chi aveva potuto aveva spaccato
2000 pezzi buttati là
Molti saluti,qualche domanda
Semplice come musica punk
Back to top
View user's profile Send private message
xchris
Advocate
Advocate


Joined: 10 Jul 2003
Posts: 2824
Location: 45.488291,9.186094

PostPosted: Fri Jan 14, 2005 7:51 am    Post subject: Reply with quote

io posso solo dire che con la bash non sarei mai riuscito a fare unclepine....
non tanto perche' non e' possibile...ma perche' il mio livello non me lo permetteva.

Con python al 3 o 4 tool in python e' stato gia' possibile farlo.. (ho imparato le basi in pochissimo tempo)

ciao
_________________
while True:Gentoo()
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Mon Jan 17, 2005 10:49 pm    Post subject: Reply with quote

Qualcuno sa come mai lo script non funziona con i file con nomi strani (che contengono spazi)?
Dice che il file non contiene informazioni EXIF!

Qualche modo per rinominare i file in modo da sostituire gli spazi con "_"? o meglio tutti i caratteri *strani* con "_"? C'è già qualche script? O devo scriverne uno da zero (A prima vista non sembrerebbe impossibile).
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
mouser
Veteran
Veteran


Joined: 10 Aug 2004
Posts: 1418
Location: Milano

PostPosted: Mon Jan 17, 2005 10:55 pm    Post subject: Reply with quote

Per un tool che faccia il lavoro di sostituzione mi sa che puoi sentire Momentime... qualche post fa mi sembra di aver capito che sta lavorando proprio in quel senso...
_________________
Della serie: "Informatica for dummies":

Io: "Premi il tasto Invio" - Risp: "Ma il tasto Invio è quello con scritto Enter sopra?"
Io: "Scrivi T maiuscolo" - Risp: "Questa tastiera non ha le lettere maiuscole..."
Back to top
View user's profile Send private message
xoen
Guru
Guru


Joined: 06 Sep 2003
Posts: 472
Location: /dev/null

PostPosted: Mon Jan 17, 2005 11:08 pm    Post subject: Reply with quote

mouser wrote:
Per un tool che faccia il lavoro di sostituzione mi sa che puoi sentire Momentime... qualche post fa mi sembra di aver capito che sta lavorando proprio in quel senso...

Si infatti mi sembrava d'aver letto che stava scrivendo uno script che se ho capito bene rinomina i file con nomi strani.

Se modifico il comando richiamato dallo script aggiungendo le virgolette risolvo qualcosa :
Code:

    file_result = os.popen ("file \""+filename+"\"").readline()

Va meglio, ma ho ancora qualche problema...vedremo...
_________________
xoen.Blog()
god@paradise # tar xfvjp big-bang.tar.bz2 -C universe
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Wed Aug 23, 2006 8:05 am    Post subject: Reply with quote

Moved from Forum italiano (Italian) to Risorse italiane (documentazione e tools).

L'ho trovato per caso e mi sembrava nel posto sbagliato 8)
_________________
Ciao da me!
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) Risorse italiane (documentazione e tools) All times are GMT
Goto page Previous  1, 2
Page 2 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum