Récupérer des fichiers d'un même dossier sur internet

Fermé
Math - 28 févr. 2015 à 19:27
 Math - 1 mars 2015 à 13:52
Bonjour,

Je souhaiterai récupérer tous les fichiers (de même type) d'un dossier sur un serveur web, et ces fichiers ne portent pas des noms aléatoires, ils sont nommés ainsi:
1.txt
2.txt
3.txt
4.txt
etc...
Seulement il y en a bien trop pour que je le fasse à la main, et surtout, il arrive souvent qu'il y ait des trous, par exemple 5.txt n'existe pas. Il me faudrait certainement des mois pour arriver à la totalité. Un ordinateur pourrait le faire en une dizaine de minutes en étant optimiste.
Pour ceux qui seraient douteux, je ne cherche en rien à nuire en ce site, c'est juste pour faire une comparaison de scores.
J'ai essayé avec WinHTTrack mais ce logiciel se base plutôt sur la récupération par lien contenus dans une page web. J'ai vu qu'on pouvait également créer une liste des fichiers à récupérer mais ça reste bien trop long quand on connait le nombre de lien à tester.

Merci d'avance!
Bonne journée!

7 réponses

Ubahup Messages postés 354 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 13 août 2023 54
28 févr. 2015 à 21:26
Je crois que l'outil perso développé à ta sauce sera la meilleure solution dans la mesure où tu souhaites vraiment un ciblage très particulier.

La vérification des images par le poids peut être une bonne solution car il y a peu (pas!) de chance d'avoir un fichier existant de poids 0 et avec un contenu. Même un fichier TXT qui à un poids 0 est résolument vide. Alors un PNG...

Je ne touche pas une bille en C++ et autres. Seuls les langages du web furent mes outils. Mais cela date un peu maintenant. En PHP, cela me semble plus rapide à développer dans la mesure où les procédures d'explorations des répertoires/serveurs sont plus transparentes qu'entre PHP et C++. Après tout, le PHP, c'est le web qui cause avec le web !

Mais comme l'autorisation de download est toujours laissée à l'Internaute, une routine PHP ne ferait que te construire une page de liens triés (sans les fichiers inexistants) où chacun de ces liens serait à cliquer individuellement. Download total fini le jour de ton 137ème anniversaire.

Reste peut-être à conjuguer tout cela avec un accès FTP.

Bref, j'ai pô véritablement fait avancer ton schmilblick. Bonne chance à toi. Prévois café et baume anti-tendinite pour ton index.

Tchô


1
Merci d'avoir répondu si vite,

J'ai bien précisé que cela n'était pas pour une utilisation frauduleuse.
Je cherche à faire cette manipulation en HTTP, je n'ai pas d'accès au serveur. En fait, pour que ce soit plus clair, je souhaiterai récupérer un maximum de résultats de speedtests, au format png.
Un exemple:
http://www.speedtest.net/result/42988976.png
Je voudrais récupérer un certains nombre de scores compris entre
/42000000.png et /43000000.png
C'est pour faire une moyenne des résultats par la suite, on peut considérer cela comme une étude.
Au vu de la rapidité de ma connexion internet, je ne pense même pas que le téléchargement massif puisse altérer la vitesse du serveur.

Merci d'avance pour toute éventuelle réponse.
0
En fait, c'est comme un simple download, sauf qu'il y a beaucoup de fichiers à récupérer. D'après moi la somme des volumes des fichiers ne devraient pas excéder 500 Mo.
0
Ubahup Messages postés 354 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 13 août 2023 54
28 févr. 2015 à 20:24
En fait Math, la véritable difficulté pour toi ne sera pas le téléchargement en soi, mais de trouver un logiciel qui exécuté une routine automatisée sur un certain nombre de fichiers dont les noms sont approximativement identiques... mais pas que !

A moins d'avoir un camarade de jeu un peu connaisseur en Python ou C++, j'vois pô.

Par contre, faute de mieux et automatique, il est peut-être possible d'utiliser les commandes de recherche de Google pour effectuer des présélections des seuls fichiers qui t'intéressent.

Par exemple en ne cherchant que les fichiers au format PNG et uniquement sur le site de Speedtest, ce qui donne qqch comme :

filetype:png site:speedtest.com

Cela te parle-t-il ?
0
C'est justement pour le logiciel que je venais.
Mais si tu penses qu'il est préférable d'utiliser la programmation, alors je passerai par là. En effet, j'ai de l'expérience dans le javascript, le c# et le php, j'ai même manipulé pendant deux ans le logiciel unity (le moteur de jeux). Je pense que je vais beaucoup me servir du php pour cet outil. Et pour éviter d'obtenir des images sans valeur (comme la plupart disponibles), je peux utiliser une fonction qui vérifierait le fichier, soit par la taille, mais dans ce cas je risque de perdre certaines images contenant des valeurs, soit en créant une fonction qui dirait en gros:
if ($fichieratelecharger == $fichiernecontenantpasdevaleur){ next(); }

Je suis pas certain de la syntaxe vu que ça fait... Très longtemps que j'ai pas programmé.

Merci de m'avoir aidé en tous cas.
Pas sûr de pouvoir publier mon outil car ça rajoute beaucoup de travail derrière et surtout, pas certain de réussir à le finir.

Bonne soirée et merci!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Je te remercie des conseils, surtout pour le baume à tendinite!
Il y a un certain temps j'ai trouvé comment faire télécharger un fichier en html.
Donc dans ma page je pourrais inclure cette balise html.
Je pourrais donc faire télécharger le fichier à la première seconde et rafraîchir la page en obtenant un nouvel identifiant du fichier à télécharger chaque fois.
Bon c'est un peu une astuce de bricoleur et ça prendra un certain temps mais bon ça me paraît pas mal.
Et en fait, le fichier vide ne fait pas 0Ko mais 12,8 Ko, il n'est pas vraiment vide. Tandis qu'un fichier qui contient le score fait environ 30Ko. Si je veux télécharger 1000 à 10000 images ça devrait se faire facile.
Et puis j'ai très régulièrement besoin de cet outil, je pourrais le recycler comme ça.
Bon, cela n'aidera pas franchement les prochains à moins que je poste mon code source mais bon.
Bonne chance pour les prochains.

Et merci encore!
Bonne soirée!
0
C'est bon, j'ai fait mon outil hier soir, bon n'ayant pas programmé depuis un moment ça m'a pris pas loin de 4 heures à élaborer le programme final.
Au départ j'étais menacé de tendinite, ça marchait très bien mais c'était trop long.
Finalement j'ai réussi à l'automatiser. Je l'ai laissé travailler cette nuit de 2h à 7h. Il a réussi à télécharger au total 37675 fichiers de 30 Ko mais bizarrement une erreur est apparue au cours de la nuit et à partir du fichier portant l'id 17500, le programme me téléchargeait la page avec une erreur php, qui n'apparait pas sur les 17500 premiers fichiers.
Mais bon c'est quand même très efficace. Sauf que pour le moment on ne peut pas se servir de l'ordinateur pendant ce temps.

Voilà,
J'ai accompli ma tâche.
0
Ubahup Messages postés 354 Date d'inscription lundi 21 décembre 2009 Statut Membre Dernière intervention 13 août 2023 54
28 févr. 2015 à 19:46
Salut Math,

Nous allons tout de suite résoudre le problème des éventuelles fraudes envisagées dans ce type de download massif.

> S'i s'agit de fichiers disposant de droits d'auteurs là, tu es seul juge. Mais un juge avertie qui fraude est immédiatement transformé en coupable !

> S'il s'agit de fichiers uniquement accessibles par FTP et que tu y as accès, alors le webmaster du site concerné à vraiement des petits soucis de sécurité.

Voilà.

Les fichiers sont-ils accessibles en HTTP comme de classiques fichiers à downloader ?

A suivre...
-1