Selenium3 Python WebDriver APIソースコード分析(19)FireFoxユーザー構成ファイルをロードします

FireFoxユーザープロファイル

Firefoxは、ユーザーの個人情報(ブックマーク、パスワード、設定、拡張子、Cookie、証明書など)をユーザープロファイルと呼ばれる一連のファイルに保存し、Firefoxプログラムファイルとは異なる場所に保存します。
したがって、WebDriverが既存のFireFoxユーザープロファイルをロードできる場合、それは多くの便利さをもたらします!

ユーザープロファイルを探す

FirefoxC:\Users\<your Windows login username>\AppData\Roaming\Mozilla\Firefox\Profiles\デフォルトで設定ファイルをローカルパスに保存します。パスは次の方法で取得できます。

  • 実行ボックスに入力して、%APPDATA%\Mozilla\Firefox\Profiles\Enterキーを押します。

  • Firefoxのアドレスバーabout:profilesでEnterキーを押します。
    ここに画像の説明を挿入

  • Firefoxのアドレスバーabout:supportでEnterキーを押します。

ここに画像の説明を挿入

FireFoxユーザープロファイルをロードする

Selenium3PythonWebDriver APIソースコード分析(18)FireFox WebDriverの実装、拡張機能のインストール」によると、Webdriverはインスタンス化時にfirefox_profileパラメーターを設定でき、値はFirefoxProfileオブジェクトまたは文字列であることがわかります。定義されていない場合は、オペレーティングシステムの一時ディレクトリに新しいカスタム構成ファイルが生成されます。

FirefoxProfileオブジェクトはselenium\webdriver\firefox\firefox_profile.py中産FirefoxProfile階級のインスタンスです
クラスの署名は次のとおりです。class FirefoxProfile(profile_directory=None):
パラメーターprofile_directoryはユーザー構成ファイルのパスです。

ケース:FireFoxユーザープロファイルをロードする

import selenium.webdriver as webdriver
from selenium.webdriver.firefox.firefox_profile import FirefoxProfile
# 用户配置文件路径
profile_path = r'C:\Users\Administrator\AppData\Roaming\Mozilla\Firefox\Profiles\1yh6m4pk.default-release'
# 创建FirefoxProfile对象
my_profile = FirefoxProfile(profile_directory=profile_path)
# 设置webdriver启动时加载的用户配置文件
driver = webdriver.Firefox(firefox_profile=my_profile)

print(driver.firefox_profile.path)

コンソール出力:

C:\Users\Administrator\AppData\Local\Temp\1\tmppd69_1qi\webdriver-py-profilecopy
ユーザープロファイルは比較的大きく、注意して使用することに注意してください。Webdriverが起動すると、指定されたFirefox構成ファイルのパスが一時ディレクトリにコピーされます。使用する一時ディレクトリは毎回異なり、不用意に使用するとディスク容量が不足する場合があります。

FirefoxProfileクラスのソースコード:

self.tempfolder = tempfile.mkdtemp()
newprof = os.path.join(self.tempfolder, "webdriver-py-profilecopy")

インターフェースの比較

通常のブラウザインターフェースでは、Tencentホームページがブックマークに追加され、VideoDownloadHelperが拡張機能としてインストールされます。
ここに画像の説明を挿入ユーザープロファイル、つまり新しいユーザープロファイルのgeckodriverインターフェイスは読み込まれません。
ここに画像の説明を挿入ユーザー構成ファイルをロードし、Webドライバーが以前に追加されたブックマークと拡張機能をロードしたことを確認します。
ここに画像の説明を挿入

参照

https://support.mozilla.org/zh-CN/kb/%E7%94%A8%E6%88%B7%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB %B6

おすすめ

転載: blog.csdn.net/mighty13/article/details/115221569