Comment utiliser wget pour télécharger à partir de sites d'hébergement?


11

wget est un outil très utile pour télécharger des trucs sur Internet rapidement, mais puis-je l'utiliser pour télécharger à partir de sites d'hébergement, comme FreakShare, IFile.it Depositfiles, Uploaded, Rapidshare? Si oui, comment faire?


4
La plupart de ces sites n'utilisent-ils pas le javascript et d'autres barrières pour éliminer les liens directs vers les fichiers?
Tim

@Tim Je pense que vous avez raison, car il est impossible d'obtenir un lien direct depuis ces sites.
Zignd

@swift Pourriez-vous s'il vous plaît le traduire en anglais et le poster sur pastebin ou ailleurs
Zignd

Réponses:


11

Ce type de site essaie de rendre difficile de ne pas utiliser un navigateur Web graphique, car si vous utilisez wget, vous manquerez toutes ces annonces qui paient pour la bande passante.

Certains sites n'effectuent pas de vérifications avancées et peuvent être trompés facilement: dites à wget de prétendre qu'il s'agit bien de Mozilla et qu'il provient du site de téléchargement .

wget --user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1' \
     --referer=http://downloadsite.example.com/download-page-url
     http://downloadsite.example.com/download-page-url/filename.ext`

La plupart des sites qui vérifient vous permettent de vous en sortir --user-agent=Mozillaet de --refererdéfinir l'URL du fichier que vous téléchargez.

Avec certains sites, vous devrez peut-être exporter les cookies du navigateur Web et passer --load-cookiesà wget; à ce stade, l'utilisation de wget commence à être plus de travail qu'un téléchargement manuel. La méthode ultime, qui peut fonctionner tout le temps mais nécessite un certain codage pour chaque site, consiste à utiliser un cadre d'automatisation de navigateur tel que Selenium ou Watir .

Voir aussi Automatisation des requêtes Web à l'aide de curl?


Impressionnant! Votre réponse m'a aidé à écrire ceci pour les Zippyshareliens: stackoverflow.com/a/21100640/1533054
Sheharyar

7

Pour Zippyshare:

Cette méthode s'appuie sur la réponse de Gilles . Comme il l'a dit, l'astuce consiste à faire croire au serveur que la demande provient d'un navigateur et pour y arriver, vous avez besoin de deux choses:

  • Le lien de téléchargement (le lien réel vers le fichier)
  • Link Referrer (La page Web avec le bouton de téléchargement)
  • ID de session Zippyshare (trouvé dans les cookies)

Voici une capture d'écran expliquant où vous pouvez obtenir chaque élément:

Télécharger depuis Zippyshare

Ouvrez maintenant votre terminal et utilisez la commande suivante (en remplaçant les éléments nécessaires):

wget <download_link> \
--referer='<referrer>' \
--cookies=off --header "Cookie: JSESSIONID=<session_id>" \
--user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'

Exemple:

wget http://www16.zippyshare.com/d/29887835/8895183/hello.txt \
--referer='http://www16.zippyshare.com/v/29887835/file.html' \
--cookies=off --header "Cookie: JSESSIONID=26458C0893BF69F88EB5743D74FE0F8C" \
--user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1'

Remarque: Dans la commande, ce n'est en fait refererpasreferrer


1
Je voudrais juste ajouter que Sheharyar utilise Firebug dans cette capture d'écran. C'est à tous ceux (y compris moi) qui ont essayé de le faire dans Inspector (ce qui n'est malheureusement pas possible).
erreur de syntaxe

1

Je voudrais également des réponses parfaites ci-dessus, j'ai utilisé l'astuce suivante pour télécharger un film enfant pour mon fils de Turbobit:

Au lieu de SESSION_ID de la réponse ci-dessus, vous devez trouver "compid" dans l'onglet cookie de FIREBUG:

entrez la description de l'image ici

Après cela, la commande de mon système embarqué Debian était tellement simple:

wget --referer='http://http://turbobit.net/download/free/yilmacr4e351' --cookies=off --header "Cookie: compid=c9255510c34624435292d8a0e7e405be66aa01f9%7ED01343F87AB53A2C38D957A564DA1D55" --user-agent='Mozilla/5.0 (Windows NT 6.0) Gecko/20100101 Firefox/14.0.1' http://turbobit.net/download/redirect/B3EDACDA9B899937A149D5AAB6662327/yilmacr4e351/Ters.Yuz.2015.1080P.WEBDL.TR.EN.mkv &

Je peux arrêter mon ordinateur maintenant :)

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.