Bonjour
J’ai une petite question:
je DL des fichiers avec la commande Wget et j’ai parfois des images incomplètes quand je les affiche sans doute par ce qu’elles ont pas finit d’être DL, alors je me disais est ce que c’est une bonne idée de faire un truck du genre:
wget http://www.url/image.jpg --output-document=“path_temporaire/test.jpg” && mv path_temporaire/test.jpg path_definitif/test.jpg
Ou est ce qu’il y a une meilleur méthode ?
Merci.
Bonsoir,
La question serait plutôt de savoir pourquoi tu as des images incomplètes, il faut regarder de ce côté là… Après que tu les fasses atterrir dans un dossier temporaire ou dans ton dossier perso ça changera pas grand chose si elles sont incomplètes…
Je suppose qu’elles sont incomplète car les images sont pas finit de DL au moment de l’affichage et vu que j’affiche toujours juste la dernière image, je me disais que je devrais la placer dans le dossier vraiment à la fin du DL et donc la placer dans un répertoire temporaire pendant le DL.
Je comprends pas, ces images sont-elles téléchargées dans un but applicatif précis qui fait qu’elles sont ouvertes instantanément lors du déclenchement du téléchargement…?
Ou bien tu télécharges et ouvres les images manuellement? Parce que si c’est manuel en principe le temps de cliquer sur l’image elle est déjà téléchargée, enfin je veux dire que télécharger une image aujourd’hui c’est quasiment instantané… (si on parle bien d’images visuelles bien sûr).
En gros j’envoie les images de mes caméras sur un serveur(mon sujet précédent) depuis mon RPi pour y avoir accès partout et je crée une vidéo chaque jour… et j’ai une page ou j’affiche en JS la dernière image a intervalle régulier et je suppose que quand le JS récupère la dernière image qu’elle n’est pas encore finit de télécharger d’ou le problème et l’idée du path temporaire.
et tu fais tout ça avec un script je suppose?
Bonjour,
as-tu essayer l’option --continue ?
La page du manuel de la commande wget mentionne :
–continue
Continue getting a partially-downloaded file.
En fait, pour bien faire, il faudrait déjà que tu lise les logs de wget.
On peut bien avoir accès au fichier en cours de DL et donc il est pas complet au moment de l’affichage par ma page ? C’est comme ça que je le vois.
Comment je vois les log pour wget il y a un fichier précis ?
Le --continue va faire que si le dl plante il recommence ?
Et bien, toujours dans le manuel de la commande wget, on peut lire :
-o logfile --output-file=logfile Log all messages to logfile. The messages are normally reported to standard error.
Sinon, l’option --continue permet de récupérer un fichier partiellement téléchargé (comme je l’ai déjà indiqué dans mon précédant post).
Bonjour
Il faudrait que JS vérifie que le fichier à afficher ait bien été fermé <≠> le fichier n’est plus ouvert pour écriture par wget.
Je vais renommer le fichier pour que mon script l’utilise seulement quand il a le bon nom et donc t’en que le fichier en cours d’envoie a pas le bon nom, mon script ne peut donc pas encore l’utiliser.
Ma commande d’upload:
curl --user “${COMPTEFTP}:${MDPFTP}” ftp://"${URLSERVEUR}" -T “${FICHIERADEPOSER}”
Il faut donc que j’arrive avec une commande de ce genre a renommer mon fichier, j’ai pas encore trouvé je cherche.
EDIT:
J’ai plus qu’a tester:
lftp ***:***@***.fr/ && mv test1 test2
EDIT:
ça me bloque la console avec cette commande car ça ne quitte pas il doit manquer un argument
J’ai réussi:
lftp -u “${COMPTEFTP}:${MDPFTP}” ftp://"${URLSERVEUR}" -e “put ${FICHIERADEPOSERDOWNLOAD}; mv ${FICHIERADEPOSERSANSPATHDOWNLOAD} ${FICHIERADEPOSER}; exit”
Par contre, je trouve que le délais est énorme avec tout les traitements a faire, j’espère que ça dépend vraiment de la connexion car le but est quand même d’avoir le délais le plus cours possible. Si je me suis pas gouré, je devrais donc maintenant ne plus avoir d’image coupé maintenant, car elle sera utilisable une seulement une fois renommé!!!
J’ai quand même l’impression que lftp est plus lent.