在哪里可以找到FireFox/Chrome的所有可用硒偏好,以及如何使用Python实现它们



我正在尝试构建一个TinderBot。

Chrome和FireFox都要求在代码之外获得地理权限(弹出窗口从浏览器的地址栏中删除,所以它不在html中,我无法使用.find_element访问它(

我在Chrome上找到了一些提示:https://testingbot.com/support/selenium/permission-popups(不过没有尝试,所以不确定它们是否是最新的(

但我找不到火狐的任何东西。

我发现了这段禁用javascipt的代码https://www.selenium.dev/documentation/webdriver/capabilities/firefox/我相信我可以在它的基础上进行构建,但我找不到如何设置它,以便它允许进行地理定位。

最近,我在这里发现了一篇文章,至少可以向我展示如何正确传递"-hedless"参数,但它现在无法打开浏览器。

from selenium import webdriver
from selenium.webdriver.firefox.service import Service
from webdriver_manager.firefox import GeckoDriverManager
from selenium.webdriver.firefox.options import Options
opts = Options()
opts.add_argument('-headless')
srvc = Service(GeckoDriverManager().install())
driver = webdriver.Firefox(options=opts, service=srvc)

一般来说,我有两个问题:

  1. 如何使add_argument工作?(我的意思是其他案例被否决了(
  2. 我需要针对哪些论点来允许在使用机器人启动浏览器时进行地理定位

我走的路对吗?由于评级不足,我无法在相关线程中提问,所以我在这里。

要在headless模式下启动Firefox浏览器,而不是使用add_argument(),您需要将headless属性设置为true如下:

from selenium import webdriver
from selenium.webdriver.firefox.options import Options
opts = Options()
opts.headless = True
srvc = Service(GeckoDriverManager().install())
driver = webdriver.Firefox(options=opts, service=srvc)

您可以在"如何使用Python在Selenium中以编程方式使Firefox无头?"中找到相关讨论?

最新更新