Version courte:
- Je voudrais prendre une copie hors ligne d'une URL qui inclut les images HTML + CSS + JS + complètes et les enregistre localement, en conservant la structure et le contenu du fichier du site d'origine.
- J'ai des problèmes avec les outils que je peux trouver (par exemple, l'extension Firefox "Save Complete", HTTrack, wget, Teleport Pro) en partie parce que l'URL se trouve derrière un formulaire de connexion.
Version plus longue:
Lorsque je travaille sur mon application, je souhaite souvent prendre une version complète hors ligne HTML + CSS + JS + images à envoyer au concepteur avec lequel je travaille, qui apporte des modifications et la renvoie. J'applique ensuite les modifications à l'application.
Cela s'est avéré beaucoup plus efficace que de le faire naviguer dans notre code avec une application en direct, mais il y a un hic - je ne trouve pas d'application de mise en miroir qui soit pratique.
Les extensions de Firefox comme "Save Complete" ont déjà le cookie de connexion, alors ne vous souciez pas qu'elles se trouvent derrière un formulaire de connexion, mais elles modifient les fichiers enregistrés localement, ce qui rend impossible de travailler avec eux.
Les outils de mise en miroir comme wget ou Teleport Pro ne prennent pas en charge notre formulaire de connexion.
HTTrack, cependant, est censé pouvoir s'exécuter en mode proxy pour détecter les informations de connexion, mais je n'ai jamais pu les faire fonctionner. En guise de solution de rechange, il peut accepter les cookies que j'ai câblés dans son fichier cookies.txt, mais cela me prend toujours des heures pour le faire de manière fiable.
Des outils, extensions de navigateur, etc. qui pourraient le faire? Open source, commercial - n'importe quoi. Si j'ai abusé de HTTrack et que c'est en fait trivial à faire - c'est aussi une excellente réponse.
Je l'ai fait avec succès avec WinHTTrack . Vous pouvez suivre la procédure normale de capture d'un site Web, avec deux réglages mineurs:
Dans Chrome, ouvrez Dev Tools, puis connectez-vous au site Web que vous souhaitez capturer. Dans l'onglet Réseau, cliquez sur la page HTML que vous avez demandée pour trouver votre cookie de session (le nom de celui-ci variera en fonction du framework back-end utilisé). Placez-le dans HTTrack sous "En-têtes HTTP supplémentaires".
Assurez-vous également que votre chaîne d'agent utilisateur correspond, car les sessions sont parfois bloquées si la chaîne d'agent utilisateur est modifiée.
Commencez à télécharger le site. Le résultat devrait être comme si vous étiez connecté.
la source
Avez-vous essayé Offline Explorer ?
Je me souviens de quelque chose comme cela vous permettrait de vous connecter, enregistrant ainsi les cookies pour les demandes conséquentes et fera le reste. Pas sûr à 100% car je l'utilisais depuis longtemps.
la source
Teleport Pro permet d'utiliser un identifiant et un mot de passe.
Lorsque vous démarrez un Assistant Nouveau projet, vous arriverez à un point où il vous donnera cette option (je pense que c'est dans le troisième écran d'options).
Et même si vous le manquez, vous pouvez accéder à nouveau à cette option.
Dans la fenêtre principale (après avoir traversé l'assistant de projet), faites un clic droit sur votre projet (petite icône de dossier affichant l'URL que vous essayez de télécharger, dans le volet gauche) et choisissez la dernière option
Starting Address Properties
et un écran d'options s'affiche. où vous pouvez spécifier un nom d'utilisateur et un mot de passe à utiliser sur ce site.la source