Wie Bild Details von firefox WebDriver zu bekommen?
Frage
Ich habe über WebDriver von Firefox ein Bild auf einer Seite gerendert bekomme, kann ich ihren Gegenstand (wd.find_element_by_xpath("id('main')/form/p[5]/img")
), aber wie kann ich seinen Körper entweder Base64-kodiert bekommen oder einfach nur einen Ort auf meiner Festplatte?
PS: bitte lass nicht den src
bekommen und es mit einem externen Werkzeug holen. Ich möchte das Bild, das ich bereits im Browser haben.
Lösung
Im Cache Bilder können, indem Sie zu einer URL wie dieser von Firefox-Cache extrahiert werden:
about:cache-entry?client=HTTP&sb=1&key=http://your.server/image.png
Die resultierende Seite wird eine Zeile mit der „Datei auf dem Datenträger“ Markierung enthält, wie diese:
file on disk: /home/fviktor/.mozilla/firefox/7jx6k3hx.default/Cache/CF7379D8d01
Diese Seite enthält auch den Hex-Dump der Inhalt der Datei. Sie können die Datei aus diesem Pfad laden oder das Hex-Dump analysieren. Bitte beachten Sie, dass der Weg auch none
im Fall von kleinen Dateien im Cache nur im Speicher sein kann. Ihre einzige Option ist in diesem Fall der Hex-Dump-Parsing.
Vielleicht gibt es eine Möglichkeit, den Hex-Dump zu unterdrücken, wenn es eine Cache-Datei ist auf der Platte, aber ich bin nicht sicher, ob es.
Andere Tipps
Ich habe ein kleines Skript erstellt, um Daten aus dem Browser-Cache zu extrahieren. Sie können Cache-Einträge mit extrahieren. Check it out in diesem Kern . Prüfen Sie diesen Beitrag für die Nutzung Führung.