Rip un site via HTTP pour télécharger des images, HTML et CSS

J'ai besoin de déchirer un site via HTTP. J'ai besoin de télécharger les images, HTML, CSS et JavaScript ainsi que de l'organiser dans un système de fichiers.

Est-ce que quelqu'un sait comment faire ça?

wget -erobots=off --no-parent --wait=3 --limit-rate=20K -r -p -U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" -A htm,html,css,js,json,gif,jpeg,jpg,bmp http://example.com 

Cela s'exécute dans la console.

Cela va attirer un site, attendre 3 secondes entre les requêtes, limiter la vitesse de téléchargement, donc ne pas tuer le site, et se masquer de manière à ce qu'il semble simplement être un navigateur afin que le site ne vous coupe pas En utilisant un mécanisme anti-sangsuants.

Notez le paramètre -A qui indique une liste des types de fichiers que vous souhaitez télécharger.

Vous pouvez également utiliser une autre balise, -D domain1.com,domain2.com pour indiquer une série de domaines que vous souhaitez télécharger si elles ont un autre serveur ou quoi que ce soit pour héberger différents types de fichiers. Il n'y a aucun moyen sécurisé d'automatiser cela pour tous les cas, si vous n'obtenez pas les fichiers.

wget est généralement préinstallé sur Linux, mais peut être compilé trivialement pour d'autres systèmes Unix ou téléchargé facilement pour Windows: GNUwin32 WGET

Utilisez-le pour le bien et non pour le mal.

Bon, solution gratuite: HTTrack

HTTrack est un utilitaire gratuit (GPL, libre / logiciel gratuit) et facile à utiliser.

Il vous permet de télécharger un site Web de l'Internet vers un répertoire local, en construisant récursivement tous les répertoires, en obtenant des images HTML, des images et d'autres fichiers depuis le serveur vers votre ordinateur. HTTrack organise la structure de lien relative du site d'origine. Il suffit d'ouvrir une page du site «miroir» dans votre navigateur et vous pouvez parcourir le site à partir du lien vers le lien, comme si vous l'aviez visionné en ligne. HTTrack peut également mettre à jour un site existant existant et reprendre les téléchargements interrompus. HTTrack est entièrement configurable et dispose d'un système d'aide intégré.

Sur les systèmes Linux, 'wget' fait cela, à peu près.

Il a également été porté à plusieurs autres plates-formes, comme l'indiquent plusieurs des autres réponses.

De toute évidence, WGet a été mentionné à plusieurs reprises. La meilleure interface utilisateur que j'ai trouvée pour elle est

  • VisualWGet

Il y a d'autres II pour WGet autour, certains d'entre eux sont candidats à la pire ui question

Regardez l'extension Scrapbook pour Firefox. Il fait un travail incroyable à ce sujet et s'intègre également à firebug et vous permet de supprimer des éléments hors DOM avant de sauvegarder si vous le souhaitez.

Vous devez utiliser wget – qui est disponible pour la plupart des plates-formes. Curl ne demandera pas de documents récursivement, ce qui constitue l'une des principales forces de wget.

Linux: (habituellement inclus dans la distro) http://www.gnu.org/software/wget/
Windows: http://gnuwin32.sourceforge.net/packages/wget.htm
Mac: http://www.geekology.co.za/blog/2009/02/macports-compile-and-install-open-source-software-on-mac-os-x/

VEUILLEZ vous assurer que vous ne martelerez pas le site Web – configurez les retards appropriés entre les demandes et assurez-vous qu'il est dans les conditions de service du site.

-Adam

En fait, après avoir suivi mon commentaire dans le post de GWLlosa, je me suis souvenu que j'ai installé GnuWin32, et bien sûr, il contient un port Windows de wget.

http://sourceforge.net/projects/gnuwin32/

 GnuWin32 provides Win32-versions of GNU tools, or tools with a similar open source licence. The ports are native ports, that is they rely only on libraries provided with any 32-bits MS-Windows operating system, such as MS-Windows 95 / 98 / 2000 / NT / XP 

J'ai utilisé cela il y a quelques années et cela a bien fonctionné. Windows uniquement. Utilisé pour être adware mais plus, apparemment:

http://www.webreaper.net/

Je pense que IDM site grabber est la meilleure solution, il y a aussi Teleport pro

Free Download Manager peut également télécharger des sites Web complets.

Windows seulement je pense.

wget --random-wait -r -p -e robots=off -U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" --limit-rate=20k -b http://www.example.com

  • -p : le paramètre indique à wget d'inclure tous les fichiers, y compris les images.
  • -e robots=off : ignore les sites robots.txt rules
  • -U "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)" : chaîne d'agent utilisateur
  • --random-wait : évitez d'être mis sur la liste noire
  • --limit-rate=20k : limite le taux auquel il télécharge les fichiers.
  • -b : continue wget après la connexion.