【问题标题】:selenium firefox download硒火狐下载
【发布时间】:2012-09-28 20:06:48
【问题描述】:

我正在使用 python selenium 并想下载一个 pdf 文件,但是它在我的浏览器中打开?如何从我的浏览器下载它?任何方式点击下图,

以前,我只需要禁用 firefox 下载框对话框,但现在我无法请求下载。有任何想法吗? 我应该怎么做才能请求下载?我也无法在服务器上找到该文件。

profile.set_preference('browser.helperApps.neverAsk.saveToDisk', "application/vnd.csv")

【问题讨论】:

标签: python firefox selenium


【解决方案1】:

没有办法以您描述的方式使用硒。但是你可以调整你的浏览器,所以它不会打开 pdf,而是下载它们——这可以用 selenium 来完成。 Here's(如何使用自定义 Firefox 配置文件自动保存文件)一个很好的例子。

【讨论】:

  • 我已经试过了。它不会下载,只是在浏览器的 pdf 查看器中打开它。
  • 因为我们看不到网页也看不到您的代码,很难说为什么它不适合您...如果不出意外,请使用请求。
  • 上下文点击怎么样,因为如果你做上下文点击它会下载>将链接保存为...,我可以进行上下文点击但不知道如何选择save link as选项,代码:download_element = driver.find_element_by_link_text(download) ActionChains(driver).context_click(download_element).perform() ActionChains.click('link=Save Link As...')
【解决方案2】:

使用AppLoader,您可以像真正的用户一样点击任何按钮、图标或快捷方式。

【讨论】:

    【解决方案3】:

    添加

    profile.set_preference("pdfjs.disabled",True)

    这将禁用 Firefox 中的默认 pdf 查看器。

    此外,您的“保存到磁盘”首选项似乎不正确。它应该是 profile.set_preference("browser.helperApps.neverAsk.saveToDisk","application/pdf")

    最后要记住的是,如果你有多种文件类型要下载,你需要把它们都放在同一个 set_preference saveToDisk 语句下,逗号分隔,否则后面的语句会覆盖前面的设置。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-03-03
      • 2012-04-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多