Einige der Downloads schlagen manchmal fehl und ich möchte alle Links aus der Chrome-Downloadliste zu einem Download-Manager übertragen.
Wenn ich die Seite „chrome://downloads“ speichere, erhalte ich eine leere HTML-Datei.
Gibt es eine Möglichkeit, alle Download-Links von der Download-Seite von Google Chrome zu exportieren (Sie können darauf zugreifen, indem Sie Ctrl+ drücken J)?
Antwort1
Ich habe im Internet und im Chrome Web Store gesucht, aber leider gibt es dafür keine Erweiterungen.
Erst als ich versuchte, ein Skript zu erstellen, stellte ich fest, dass die Dinge nicht so einfach sind, weil es viele verschachtelte Shadow-DOM-Elemente gibt. Trotzdem habe ich es geschafft, es zu schreiben.
Unten ist der Code, den Sie in die Konsole einfügen müssen( Ctrl+ Shift+ J), um alle Links zu erhalten.
ditems = document.querySelector("downloads-manager").shadowRoot.querySelector("iron-list").querySelectorAll("downloads-item");
var div = document.createElement('div');
[].forEach.call(ditems, function (el) {
var br = document.createElement('br');
var hr = document.createElement('hr');
div.appendChild(el.shadowRoot.querySelector("#url"));
div.appendChild(br);
div.appendChild(hr);
});
document.body.innerHTML=""
document.body.appendChild(div);
document.head.style.innerHTML="";
Anschließend können Sie die resultierende Seite mit Ctrl+ speichern S.
Antwort2
Sie können die Download-Links aus der Verlaufsdatenbank von Chrome extrahieren.
- Suchen Sie die
History
Datei:- unter macOS:
~/Library/Application\ Support/Google/Chrome/Default/
- unter Windows:
%LocalAppData%\Google\Chrome\User Data\Default
- unter Linux:
~/.config/google-chrome/Default
- unter macOS:
- Erstellen Sie eine Kopie der Datei
History
an einem anderen Speicherort (Sie können das Original nicht verwenden, während Chrome geöffnet ist). - Nun können Sie die Download-Links aus der kopierten Datei extrahieren, entweder mitsqlite3CLI oder mithilfe eines GUI SQLite Viewers wieDB-Browser für SQLiteDie Downloadlinks finden Sie in der Tabelle
downloads_url_chains
.
Ähnliche Frage, die einige nützliche SQLite3-Befehle enthält:Kann der Chrome-Browserverlauf in eine HTML-Datei exportiert werden?
Antwort3
Folgendes habe ich verwendet, um die URLs ab Juni 2023 (Version 112.0.5615.121) abzurufen:
var items = document.getElementsByTagName('downloads-manager')[0].$.downloadsList._physicalItems;
for (let i = 0; i < items.length; i++) {
console.log(items[i].$.name.innerHTML + ' - ' + items[i].$.url.innerHTML);
}
Dieses Skript ruft die Download-URLs zusammen mit den Dateinamen in Stapeln zu je 18 ab. Wenn Sie mehr als 18 Links haben, müssen Sie möglicherweise auf der Download-Seite nach unten scrollen, um den nächsten Stapel zu laden, und das Skript mehrmals ausführen.
Antwort4
Sie können auch die spezielle NirSoft-Anwendung BrowserDownloadView verwenden (die ich gerade am 01.12.2023 getestet habe). Sie funktionierte hervorragend mit Chrome (neueste Version, unter Windows 10 Enterprise).
Verknüpfung: https://www.nirsoft.net/utils/web_browser_downloads_view.html