6

FirefoxによってWebdriverを介してレンダリングされたページに画像があり、そのオブジェクト(wd.find_element_by_xpath("id('main')/form/p[5]/img"))を取得できますが、その本体をbase64でエンコードするか、ハードドライブ上の場所だけを取得するにはどうすればよいですか?

srcPS:外部ツールで取得して取得することを提案しないでください。ブラウザにすでにある画像が欲しいです。

4

3 に答える 3

6

キャッシュされた画像は、次のようなURLに移動することでFirefoxのキャッシュから抽出できます。

about:cache-entry?client=HTTP&sb=1&key=http://your.server/image.png

結果のページには、次のような「ディスク上のファイル」ラベルの行が含まれます。

file on disk: /home/fviktor/.mozilla/firefox/7jx6k3hx.default/Cache/CF7379D8d01

このページには、ファイルの内容の16進ダンプも含まれます。そのパスからファイルをロードするか、16進ダンプを解析できます。noneパスは、メモリにのみキャッシュされた小さなファイルの場合にも使用できることに注意してください。この場合、唯一のオプションは16進ダンプを解析することです。

ディスクにキャッシュファイルがある場合に16進ダンプを抑制する方法があるかもしれませんが、それについてはよくわかりません。

于 2009-11-23T04:22:41.713 に答える
1

ブラウザのキャッシュからデータを抽出するための小さなスクリプトを作成しました。これを使用してキャッシュエントリを抽出できます。この要点でそれをチェックしてください。使用ガイドについては、この投稿を確認してください。

于 2015-10-17T17:23:55.760 に答える
0

fvictorの答えは役に立ちましたが、構文が変更されました。Firefoxバージョン60.9esrでは、エントリはとして保存され、ページにはラベルabout:cache-entry?storage=disk&context=&eid=&uri=https://example.com/images/img.pngが含まれていません。file on diskしかし、下部にはまだ16進ダンプがあります。

于 2021-06-27T20:47:41.197 に答える