当前位置: 首页 > 面试题库 >

使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径

金承嗣
2023-03-14
问题内容

我试图建立一个实用程序功能,将漂亮的汤代码输出到浏览器,我有以下代码:

def bs4_to_browser(data):

    from selenium import webdriver

    driver = webdriver.Firefox(path="F:\FirefoxPortable\Firefox.exe")
    driver.get("about:blank")

    data = '<h1>test</h1>'  # supposed to come from BeautifulSoup
    driver.execute_script('document.body.innerHTML = "{html}";'.format(html=data))

    return

当我运行这个我得到:

TypeError at /providers/
__init__() got an unexpected keyword argument 'path'

我正在使用win7。如何设置便携式Firefox可执行文件的路径?


问题答案:

要设置自定义路径,Firefox您需要使用FirefoxBinary

from selenium.webdriver.firefox.firefox_binary import FirefoxBinary

binary = FirefoxBinary('F:\FirefoxPortable\Firefox.exe')
driver = webdriver.Firefox(firefox_binary=binary)

或者,或者,添加F:\FirefoxPortablePATH环境变量中并Firefox以通常的方式启动:

driver = webdriver.Firefox()


 类似资料:
  • 我是selenium的新手,我想使用selenium chrome Web驱动程序在特定的自定义文件夹中下载文件。默认情况下,该文件正在浏览器指定的下载路径中下载。任何一个建议在C#Selenium的自定义路径中下载文件的最佳解决方案。

  • 我已经使用python&Selenium在Ubuntu OS中设置了一个新创建的Firefox配置文件的路径。但是当我运行python脚本时,我会得到一个错误 我已将该文件的权限更改为755,但仍然出现错误,并尝试了sudo。 这是我的python脚本的开始:- 文件“default2.py”,第9行,在浏览器=webdriver.firefox(firefox_binary=binary)文件中

  • 问题内容: 我正在使用Flash录制音频并将其上传到节点服务器。Flash客户端是jrecorder的变体。当用户完成录制后,将使用POST请求(而不是表单,因为Flash无法创建文件)来上传音频,并将音频ByteArray作为POST请求的数据(请参见此处的更多信息)。 我可以使用下面的代码在Node- land上正确接收文件,但是发出的音频被破坏了,您听不到任何声音。话虽如此,该文件的内容可以

  • 我尝试了这个python脚本在windows上的portable Firefox中打开一个url,但是我得到了跟踪。 以下是回溯: 我正在使用: 你知道如何让便携式Firefox工作吗?

  • 下面是一个上传二进制文件的例子,WebService类的代码如下: package service; import java.io.InputStream; import java.io.OutputStream; import java.io.FileOutputStream; import javax.activation.DataHandler; public class 

  • 问题内容: 为了将二进制文件上传到URL,建议使用本指南。但是,该文件不在目录中,而是存储在MySql db的BLOB字段中。BLOB字段在JPA中映射为属性: 我以这种方式稍微修改了指南中的代码: 我没有使用分块流。使用的标头是: 主机正确接收了所有标头。它还接收上载的文件,但不幸的是,它抱怨该文件不可读,并且断言所接收文件的大小比我的代码输出的大小大37个字节。 我对流,连接和byte []的