Copie de plusieurs URLs dans L'onglet Sources/réseau

est-il possible d'extraire les URLs de plusieurs ressources dans Sources ou onglet Réseau des outils Chrome Dev?

Lorsque je veux obtenir L'URL D'une ressource simple , je peux le faire avec la fonction de menu de contexte adresse de lien de copie

enter image description here

je peux passer à cette ressource du réseau à l'onglet Sources et vice versa, mais que faire si je avez-vous besoin d'obtenir les URLs des ressources multiple à la fois? Il est très difficile de les copier manuellement si le jeu de résultats se compose de 200-300 ressources.

Ce que j'ai essayé jusqu'à présent:

  1. copier le dossier entier à partir d'un onglet sources, mais à partir de cette réponse j'ai découvert que ce n'est pas possible pour le moment.
  2. à utiliser $(selector) comme spécifié dans le Référence de la Console , sous la forme de

    $('img')
    

    dans le cas où nous avons besoin de récupérer des URLs d'image.

    la complexité de cette approche est qu'il est souvent difficile de distinguer les images cibles sur une page qui en a des centaines, et en outre, plusieurs versions de la même image (vues, aperçus, icônes de petite taille et etc. I. e. correspondre l'élément à l'intérieur de la balise de la ressource n'est pas facile, comme il semble. De plus, tous les types de fichiers n'ont pas de balises dédiées (comme dans le cas de img ).

peut-être devrais-je utiliser l'étiquette src avec quelques modificateurs? Toutes les autres suggestions?

5
demandé sur Community 2016-12-17 19:02:38

1 réponses

  1. Switch devtools de fenêtre détachée (cliquez sur devtools icône paramètres, cliquez sur "quai" détacher de l'icône). La prochaine fois vous pouvez simplement appuyer sur Ctrl - Shift - d .
  2. Invoquer devtools-pour-devtools en appuyant sur Ctrl - Shift - je
  3. exécutez ce code pour copier les URLs de toutes les requêtes filtrées à bloc-notes: copy(UI.panels.network._networkLogView._dataGrid._rootNode._flatNodes.map(n => n._request._url).join('\n'))

vous pouvez enregistrer le code sous forme D'extrait dans le panneau Sources et l'exécuter via rightclick-menu ou Ctrl-Enter:

var URLs = UI.panels.network._networkLogView._dataGrid._rootNode._flatNodes.map(n => n._request._url);
copy(URLs.join('\n'));
URLs; // displays it in the console as an expandable array
14
répondu wOxxOm 2017-07-17 16:41:31