GVKun编程网logo

使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径(selenium控制已经打开的火狐)

22

在这里,我们将给大家分享关于使用SeleniumWebDriver在Windows上设置FireFox二进制文件的路径的知识,让您更了解selenium控制已经打开的火狐的本质,同时也会涉及到如何更有

在这里,我们将给大家分享关于使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径的知识,让您更了解selenium控制已经打开的火狐的本质,同时也会涉及到如何更有效地Firefox + Selenium WebDriver并自动下载csv文件、paycharm导入webdriver包报错:module ''selenium.webdriver'' has no attribute ''Firefox''、perl – 使用Firefox 26的Selenium Webdriver 2?、python+selenium webdriver.firefox()方式配置浏览器设置的内容。

本文目录一览:

使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径(selenium控制已经打开的火狐)

使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径(selenium控制已经打开的火狐)

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

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可执行文件的路径?

答案1

小编典典

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

from selenium.webdriver.firefox.firefox_binary import FirefoxBinarybinary = FirefoxBinary(''F:\FirefoxPortable\Firefox.exe'')driver = webdriver.Firefox(firefox_binary=binary)

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

driver = webdriver.Firefox()

Firefox + Selenium WebDriver并自动下载csv文件

Firefox + Selenium WebDriver并自动下载csv文件

如何解决Firefox + Selenium WebDriver并自动下载csv文件?

有时内容类型与您期望的不一样使用 Firefox插件(或类似工具)查找文件的真实内容类型并在代码中使用它

顺便说一句,对我来说,内容类型是

fp.set_preference("browser.helperApps.neverAsk.openFile", "application/octet-stream");
fp.set_preference("browser.helperApps.neverAsk.savetodisk", "application/octet-stream");

解决方法

我对Selenium WebDriver和Firefox有问题。我想在对话框窗口中下载没有确认的csv文件,并且我有如下代码:

fp = webdriver.FirefoxProfile()
fp.set_preference("browser.download.folderList",2)
fp.set_preference("browser.download.dir",download_dir)
fp.set_preference("browser.download.manager.showWhenStarting",False)
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/csv")

但似乎不起作用。我尝试了与 browser.helperApps.neverAsk.saveToDisk的* 许多组合 *

fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/csv,application/csv,text/plan,text/comma-separated-values")

要么

fp.set_preference("browser.helperApps.neverAsk.saveToDisk","application/csv")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/plain")
fp.set_preference("browser.helperApps.neverAsk.saveToDisk","text/comma-separated-values")

但没有任何区别,Firefox也不会自动下载。我该如何解决?

paycharm导入webdriver包报错:module ''selenium.webdriver'' has no attribute ''Firefox''

paycharm导入webdriver包报错:module ''selenium.webdriver'' has no attribute ''Firefox''

首先:试试看在cmd中试试输入from selenium import webdriver,看是否报错,看一看是不是pycharm的原因。经过确认,在dos窗口中输入导入包的命令并没有报错。最后我重现了一次步骤,原来是在pycharm中新建工程的时候出现问题了。

 

 

解决问题方法:

在pycharm中,新建工程,要勾选下面的两个东西。

Inherit global site-packages: 导入本地包

Make available to all projects : 使所有项目都可用

 

perl – 使用Firefox 26的Selenium Webdriver 2?

perl – 使用Firefox 26的Selenium Webdriver 2?

今天早上我用2.32和Firefox 25.0.1运行Selenium. Firefox更新到26.0,突然Selenium停止工作.它会弹出新的浏览器窗口,但只是坐在那里提示搜索或地址. Selenium是否有问题?它是否被Firefox地址栏中的新提示搞糊涂了?是否已经在较新的Selenium 2.3x中修复过?

在等待修复时,更改我的代码以使用Chrome或(yecch)IE10的最简单方法是什么?我想让我的测试代码可配置,以便我的小组中的其他人可以使用他们选择的浏览器(尤其是Chrome).我尝试通过在new()方法中添加’browser_name’=>’* chrome’来让Chrome工作,但它从未奏效.

顺便说一句,我使用的是Perl语言绑定(Selenium :: Remote :: Driver 0.17).

解决方法

尝试将selenium更新为2.38.0(撰写本文时为最新版本).我有类似的问题与firefox更新,然后按钮没有被点击和升级版本解决了它.希望这能解决它.

python+selenium webdriver.firefox()方式配置浏览器设置

python+selenium webdriver.firefox()方式配置浏览器设置

webdriver.firefox() 爬虫需求:  (其实是输入参数可获取.zip/pdf 文件,然后点击下载)

——但是firefox浏览器有Bug,点击下载之后会有弹出窗口,需要你点击确定,这怎么能成,所以

百度一把:得知需要修改firefox的配置文件mimeTypes.rdf

——搜索栏输入:about:support  配置文件夹—》打开文件夹—》获取文件地址

 

添加配置内容:

<RDF:Description RDF:about="urn:mimetype:application/zip"
NC:value="application/zip"
NC:editable="true"
NC:fileExtensions="zip"
NC:description="*.zip">
<NC:handlerProp RDF:resource="urn:mimetype:handler:application/zip"/>
</RDF:Description>

<RDF:Seq RDF:about="urn:mimetypes:root">
<RDF:li RDF:resource="urn:mimetype:application/zip"/>
</RDF:Seq>

=====现在下载不需要每次都点击了=====

但是:使用webdriver.firefox()时,程序调用的是一个全新的firefox,所以配置文件并没有起到作用

——程序中可添加FirefoxProfile文件来支持 (FirefoxProfile文件目录就是mimeTypes.rdf的上级目录)

def __init__(self):
self.url = ''+++++++++++++''
profile=webdriver.FirefoxProfile("C:\Users\用户名\AppData\Roaming\Mozilla\Firefox\Profiles\9a71bi5y.default")
self.browser = webdriver.Firefox(profile)

 

我们今天的关于使用Selenium WebDriver在Windows上设置FireFox二进制文件的路径selenium控制已经打开的火狐的分享就到这里,谢谢您的阅读,如果想了解更多关于Firefox + Selenium WebDriver并自动下载csv文件、paycharm导入webdriver包报错:module ''selenium.webdriver'' has no attribute ''Firefox''、perl – 使用Firefox 26的Selenium Webdriver 2?、python+selenium webdriver.firefox()方式配置浏览器设置的相关信息,可以在本站进行搜索。

本文标签: