Comment demandez-vous à wget d'explorer récursivement un site Web et de télécharger uniquement certains types d'images?
J'ai essayé d'utiliser cela pour explorer un site et télécharger uniquement des images Jpeg:
wget --no-parent --wait=10 --limit-rate=100K --recursive --accept=jpg,jpeg --no-directories http://somedomain/images/page1.html
Cependant, même si page1.html contient des centaines de liens vers des sous-pages, qui ont eux-mêmes des liens directs vers des images, wget signale des choses comme "Suppression de subpage13.html car il doit être rejeté", et ne télécharge jamais aucune image, car aucune n'est directement liée à à partir de la page de démarrage.
Je suppose que c'est parce que mon --accept est utilisé à la fois pour diriger l'analyse et filtrer le contenu à télécharger, alors que je veux qu'il ne soit utilisé que pour diriger le téléchargement du contenu. Comment faire pour que wget explore tous les liens, mais ne télécharge que des fichiers avec certaines extensions comme * .jpeg?
EDIT: De plus, certaines pages sont dynamiques et sont générées via un script CGI (par exemple img.cgi? Fo9s0f989wefw90e). Même si j'ajoute cgi à ma liste d'acceptation (par exemple --accept = jpg, jpeg, html, cgi), ceux-ci sont toujours toujours rejetés. Y a-t-il un moyen de contourner ceci?
Comment vous attendez-vous à ce que wget connaisse le contenu de subpage13.html (et donc les jpg vers lesquels il renvoie) s'il n'est pas autorisé à le télécharger. Je vous suggère d'autoriser le HTML, d'obtenir ce que vous voulez, puis de supprimer ce que vous ne voulez pas.
Je ne sais pas trop pourquoi vos cgi sont rejetés ... y a-t-il une erreur générée par wget? Faites peut-être wget verbose (
-v
) et voyez. Pourrait être mieux comme une question distincte.Cela dit, si vous ne vous souciez pas de la bande passante et téléchargez des lots, supprimez ce que vous ne voulez pas, peu importe.
Consultez également
--html-extension
Depuis la page de manuel:
--restrict-file-names=unix
pourrait également être utile en raison de ces URL cgi ...la source
--no-parent
mais je m'arrêterai là.Vous pouvez également utiliser MetaProducts Offline Explorer sans programmation
la source
Essayez d'ajouter l'
--page-requisites
optionla source