4

我正在尝试在 python3 上使用 selenium 和 Firefox 从 url 下载文件,但这在 geckodriver 日志文件中出现错误:

 (firefox:13723): Gtk-WARNING **: 11:12:39.178: Theme parsing error:       <data>:1:77: Expected ')' in color definition
 1546945960048  Marionette  INFO    Listening on port 40601
 1546945960132  Marionette  WARN    TLS certificate errors will be ignored for this session
     console.error: BroadcastService: 
      receivedBroadcastMessage: handler for
      remote-settings/monitor_changes
       threw error:
            Message: Error: Polling for changes failed: NetworkError when attempting to fetch resource..
            Stack:
                remoteSettingsFunction/remoteSettings.pollChanges@resource://services-settings/remote-settings.js:188:13

我使用 geckodriver 版本 0.22 和 firefow 版本 65.0。我也在 UBUNTU 18(仅 ssh)geckodriver 位于 /usr/bin 文件中,并且拥有所有需要的权利。

我在谷歌上读到这可能是因为 COPS。但我真的了解 COPS 是什么或如何解决它们(如果这是真正的问题)。

这是我的代码:

from os import getcwd
from pyvirtualdisplay import Display
from selenium import webdriver

# start the virtual display
display = Display(visible=0, size=(800, 600))
display.start()

# configure firefox profile to automatically save csv files in the current directory
fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList", 2)
fp.set_preference("browser.download.manager.showWhenStarting", False)
fp.set_preference("browser.download.dir", getcwd())
fp.set_preference("browser.helperApps.neverAsk.saveToDisk", "text/csv")

driver = webdriver.Firefox(firefox_profile=fp)
page = "https://www.thinkbroadband.com/download"
driver.get(page)
driver.find_element_by_xpath("//*[@id='main-col']/div/div/div[8]/p[2]/a[1]").click()

你们有什么想法吗?

4

2 回答 2

3
于 2019-01-08T14:50:56.697 回答
0

我得到了同样的错误。将 geckodriver vresion 更新为 geckodriver 0.24.0(2019-01-28)后对我来说效果很好。尝试这个

xxxxx:~$ geckodriver --version
geckodriver 0.24.0 ( 2019-01-28)

于 2019-12-04T07:48:27.347 回答