PDA

View Full Version : Creazione script - archivio webcam


Venosino1
11-04-2009, 17:08
Ciao a tutti! Sono nuovo, mi chiamo Nico ed ho 16 anni.
Vi spiego il mio problema sperando di poter essere aiutato :)
Allora ho installato una webcam utilizzando una fotocamera digitale canon (A520). Utilizzo un programma (PSremote) che scatta ogni 2 minuti una foto che chiama webcam.jpg, la salva in una cartella e la invia sul mio sito web (utilizzo le operazioni pianificate con un file batch per lo scatto e per l'upload sul sito).
Ora vorrei creare sul sito un archivio della webcam per poter rivedere gli scatti di un determinato giorno.
Ho trovato questo sito http://merlara.altervista.org/webcam/index2.php (il proprietario utilizza come me una fotocamera come webcam) con l'archivio quì: http://merlara.altervista.org/archivio/oggi/ e http://merlara.altervista.org/archivio/ieri/
Ho contattato il proprietario del sito che mi ha gentilmente concesso lo script che utilizza: questo però è per linux e a me servirebbe per windows xp.
Questo script funziona così: dopo aver inviato il file webcam.jpg sul sito, lo rinomina con data e ora dello scatto e lo uppa sul sito in una determinata cartella.
E' possibile creare qualcosa del genere anche su windows tramite batch o altro?
Grazie :)

Marinelli
13-04-2009, 23:30
Ciao.
Se ho capito bene tu vuoi rinominare un file e poi caricarlo su un sito con uno script.
Per caricare il file sul sito utilizzi una connessione via FTP?

Ciao!

Venosino1
14-04-2009, 00:34
Ciao.
Se ho capito bene tu vuoi rinominare un file e poi caricarlo su un sito con uno script.
Esatto..

Per caricare il file sul sito utilizzi una connessione via FTP?


Marinelli
14-04-2009, 13:18
Ho trovato qualcosa che potrebbe interessarti.
Crea un file bat contenente il codice sottostante:


echo off
for %%I in (webcam.jpg) do (
for /F "tokens=1-6 delims=/-: " %%A in ("%%~tI") do (
set CRDATE=%%B-%%A-%%C@%%D%%E
)
)
ren webcam.jpg %CRDATE%.jpg
del ftp.txt
echo USERNAME >> ftp.txt
echo PASSWORD >> ftp.txt
echo cd CARTELLA >> ftp.txt
echo binary >> ftp.txt
echo send %CRDATE%.jpg >> ftp.txt
echo quit >> ftp.txt
ftp -s:ftp.txt FTPSERVER


La prima parte del codice rinomina il file webcam.jpg contenuto nella stessa cartella del file batch in [email protected], ad esempio [email protected]. La seconda parte crea un file txt contenente i dati per la connessione al server FTP e l'upload del nuovo file e l'ultima riga effettua la connessione al server FTP ed esegue i comandi contenuti in ftp.txt.

Ovviamente dovrai:
- mettere il tuo username per l'FTP al posto di USERNAME;
- mettere la tua password per l'FTP al posto di PASSWORD;
- mettere la cartella dove vuoi caricare i files al posto di CARTELLA; se devi scendere più livelli per trovarla basta replicare più volte il comando cd, ogni volta con la cartella corretta in cui vuoi entrare;
- mettere il server FTP a cui ti connetti al posto di FTPSERVER.

Per evitare di ricreare tutte le volte il file ftp.txt puoi scegliere di cancellare o spostare il file [email protected] appena rinominato in un'altra cartella e creare una volta sola, a manina, un file ftp.txt con la 5° riga = send *.jpg (tanto ci sarà solo l'ultimo file).

Spero ti possa essere utile.
Ciao :)

Venosino1
16-04-2009, 18:43
Ho trovato qualcosa che potrebbe interessarti.
Crea un file bat contenente il codice sottostante:


echo off
for %%I in (webcam.jpg) do (
for /F "tokens=1-6 delims=/-: " %%A in ("%%~tI") do (
set CRDATE=%%B-%%A-%%C@%%D%%E
)
)
ren webcam.jpg %CRDATE%.jpg
del ftp.txt
echo USERNAME >> ftp.txt
echo PASSWORD >> ftp.txt
echo cd CARTELLA >> ftp.txt
echo binary >> ftp.txt
echo send %CRDATE%.jpg >> ftp.txt
echo quit >> ftp.txt
ftp -s:ftp.txt FTPSERVER


La prima parte del codice rinomina il file webcam.jpg contenuto nella stessa cartella del file batch in [email protected], ad esempio [email protected]. La seconda parte crea un file txt contenente i dati per la connessione al server FTP e l'upload del nuovo file e l'ultima riga effettua la connessione al server FTP ed esegue i comandi contenuti in ftp.txt.

Ovviamente dovrai:
- mettere il tuo username per l'FTP al posto di USERNAME;
- mettere la tua password per l'FTP al posto di PASSWORD;
- mettere la cartella dove vuoi caricare i files al posto di CARTELLA; se devi scendere più livelli per trovarla basta replicare più volte il comando cd, ogni volta con la cartella corretta in cui vuoi entrare;
- mettere il server FTP a cui ti connetti al posto di FTPSERVER.

Per evitare di ricreare tutte le volte il file ftp.txt puoi scegliere di cancellare o spostare il file [email protected] appena rinominato in un'altra cartella e creare una volta sola, a manina, un file ftp.txt con la 5° riga = send *.jpg (tanto ci sarà solo l'ultimo file).

Spero ti possa essere utile.
Ciao :)

Ciao Marinelli e scusa se rispondo solo ora.. innanzitutto grazie mille, è proprio ciò che cercavo!
Ora però, se non chiedo troppo, mi servirebbe una modifica nello script.. cioè questo script rinomina webcam.jpg nella data e ora di creazione di webcam.jpg, non si potrebbe rinominare nella data e nell'ora di avvio del file batch?
(Forse chiedo troppo, spero comunque sia possibile farlo!)

Ancora grazie mille per la disponibilità!

Marinelli
17-04-2009, 17:21
Ciao Marinelli e scusa se rispondo solo ora.. innanzitutto grazie mille, è proprio ciò che cercavo!
Ora però, se non chiedo troppo, mi servirebbe una modifica nello script.. cioè questo script rinomina webcam.jpg nella data e ora di creazione di webcam.jpg, non si potrebbe rinominare nella data e nell'ora di avvio del file batch?
(Forse chiedo troppo, spero comunque sia possibile farlo!)

Ancora grazie mille per la disponibilità!

Acc, ti strozzerei :D:D
Nel primo messaggio avevi chiesto la data/ora dello scatto ;)

Certo che si può fare, diventa ancora più semplice:


echo off
set %MYDATE%=%date:~0,2%%date:~3,2%%date:~8,2%@%time:~0,5%
ren webcam.jpg %MYDATE%.jpg
del ftp.txt
echo USERNAME >> ftp.txt
echo PASSWORD >> ftp.txt
echo cd CARTELLA >> ftp.txt
echo binary >> ftp.txt
echo send %MYDATE%.jpg >> ftp.txt
echo quit >> ftp.txt
ftp -s:ftp.txt FTPSERVER


Se hai bisogno di altro chiedi pure ;)
Ciao!

Venosino1
17-04-2009, 17:24
Acc, ti strozzerei :D:D
Nel primo messaggio avevi chiesto la data/ora dello scatto ;)

Certo che si può fare, diventa ancora più semplice:


echo off
set %MYDATE%=%date:~0,2%%date:~3,2%%date:~8,2%@%time:~0,5%
ren webcam.jpg %MYDATE%.jpg
del ftp.txt
echo USERNAME >> ftp.txt
echo PASSWORD >> ftp.txt
echo cd CARTELLA >> ftp.txt
echo binary >> ftp.txt
echo send %MYDATE%.jpg >> ftp.txt
echo quit >> ftp.txt
ftp -s:ftp.txt FTPSERVER


Se hai bisogno di altro chiedi pure ;)
Ciao!

Grazie mille, gentilissimo! :)