Я могу получить доступ к таким страницам, как about:cache-entry?client=HTTP&sb=1&key=(some URL)
непосредственно в Firefox, но когда он отображает страницу, он, безусловно, получает данные из некоторого хранилища. Как я могу получить доступ к последней из Python Firefox Webdriver?Как получить доступ к кешу Firefox из webdriver?
4
A
ответ
2
страница, возвращаемый такой about:cache-entry?...
URL содержит строку, как это:
file on disk: /home/fviktor/.mozilla/firefox/7jx6k3hx.default/Cache/CF7379D8d01
Это полный путь к файлу кэша, если таковые имеются. Я думаю, вы сможете прочитать этот файл с Python, как обычно, но я еще не тестировал его. Идентификатор пути также может быть none
в случае небольших файлов, кэшированных только в памяти. Вы можете получить содержимое файла, проанализируя шестнадцатеричный дамп на возвращенной странице в этом случае.
Если вы посмотрите в свой 'about: cache', вы увидите, что некоторые элементы кэша находятся на диске (* Устройство кэширования диска *), а некоторые находятся в памяти (* Устройство кэширования памяти *), которые в памяти не имеют путь, связанный с ними, и OP хочет знать, как он может получить к ним доступ. – Motti
Эти страницы 'about: cache-entry? ...' содержат полный шестнадцатеричный дамп кэшированных файлов, даже если они находятся в кеше памяти. Медленным решением будет анализ этого шестнадцатеричного дампа. Например, он должен работать для вас в Firefox: 'about: cache-entry? Client = HTTP & sb = 1 & key = http: // sstatic.net/so/img/logo.png' – fviktor