15

私はPythonを使用しています。セレンを使用してFirefoxでjavascriptを無効にするにはどうすればよいですか? これは、プロファイルを作成してから、そのプロファイルを使用してドライバーをロードすることを示しています。しかし、ページがレンダリングされた後に Javascript を無効にしたいので、ドライバーを再作成することはできません。

私は次のことを試しました:

browser = selenium.webdriver.Firefox()
browser.get('http://wwwhatever.com')
browser.firefox_profile.set_preference('javascript.enabled', False)
browser.firefox_profile.update_preferences()

しかし、私はこれを取得します:

print browser.capabilities['javascriptEnabled']
True

さらに、私のテストの残りの部分は、Javascript が有効になっているように動作します。

4

1 に答える 1

2

QuickJs 拡張で可能です - https://addons.mozilla.org/en-US/firefox/addon/quickjs/?src=search。この拡張機能は、JavaScript を無効にする Ctrl+q ショートカットを追加します。コードは次のとおりです。

profile = selenium.webdriver.FirefoxProfile()
profile.add_extension("addon-8753-latest.xpi") #QuickJs extension
browser = selenium.webdriver.Firefox(profile)
browser.get('http://wwwhatever.com')

#Turn of javascript, send Ctrl+q
body = browser.find_element_by_tag_name("body")
body.send_keys(selenium.webdriver.common.keys.Keys.CONTROL + 'q')
于 2013-10-29T16:16:24.337 に答える