在这篇文章中,我们将带领您了解不想在SeleniumWebDriver中的Firefox上加载图像和CSS渲染-Python的全貌,包括selenium控制已经打开的火狐的相关情况。同时,我们还将为您
在这篇文章中,我们将带领您了解不想在Selenium WebDriver中的Firefox上加载图像和CSS渲染-Python的全貌,包括selenium控制已经打开的火狐的相关情况。同时,我们还将为您介绍有关Firefox + Selenium WebDriver并自动下载csv文件、perl – 使用Firefox 26的Selenium Webdriver 2?、Python Selenium-FireFox Webdriver配置文件首选项中可能有哪些键、python+selenium webdriver.firefox()方式配置浏览器设置的知识,以帮助您更好地理解这个主题。
本文目录一览:- 不想在Selenium WebDriver中的Firefox上加载图像和CSS渲染-Python(selenium控制已经打开的火狐)
- Firefox + Selenium WebDriver并自动下载csv文件
- perl – 使用Firefox 26的Selenium Webdriver 2?
- Python Selenium-FireFox Webdriver配置文件首选项中可能有哪些键
- python+selenium webdriver.firefox()方式配置浏览器设置
不想在Selenium WebDriver中的Firefox上加载图像和CSS渲染-Python(selenium控制已经打开的火狐)
我正在将Selenium 2与python绑定一起使用,以从合作伙伴的网站中获取一些数据。但是平均而言,执行此操作大约需要13秒钟。
我正在寻找一种禁用图像CSS和Flash等的方法。
我正在使用Firefox 3.6,也正在使用pyvirtualdisplay来防止打开Firefox窗口。任何其他加快Firefox的优化也将有所帮助。
我已经尝试过network.http.*
选项,但并没有太大帮助。
并设置 permissions.default.image = 2
答案1
小编典典我想出了一种方法来阻止Firefox加载CSS,图像和Flash。
from selenium.webdriver.firefox.firefox_profile import FirefoxProfiledef disableImages(self): ## get the Firefox profile object firefoxProfile = FirefoxProfile() ## Disable CSS firefoxProfile.set_preference(''permissions.default.stylesheet'', 2) ## Disable images firefoxProfile.set_preference(''permissions.default.image'', 2) ## Disable Flash firefoxProfile.set_preference(''dom.ipc.plugins.enabled.libflashplayer.so'', ''false'') ## Set the modified profile while creating the browser object self.browserHandle = webdriver.Firefox(firefoxProfile)
再次感谢@Simon和@ernie的建议。
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也不会自动下载。我该如何解决?
perl – 使用Firefox 26的Selenium Webdriver 2?
在等待修复时,更改我的代码以使用Chrome或(yecch)IE10的最简单方法是什么?我想让我的测试代码可配置,以便我的小组中的其他人可以使用他们选择的浏览器(尤其是Chrome).我尝试通过在new()方法中添加’browser_name’=>’* chrome’来让Chrome工作,但它从未奏效.
顺便说一句,我使用的是Perl语言绑定(Selenium :: Remote :: Driver 0.17).
解决方法
Python Selenium-FireFox Webdriver配置文件首选项中可能有哪些键
我在任何地方都找不到真正的信息,我正在寻找可以在profile.set_preference()
API中使用的可能键的列表。
这里是一些上下文:
from selenium import webdriverfrom pyvirtualdisplay import Displaydisplay = Display(visible=0, size=(1024, 768))display.start()profile = webdriver.FirefoxProfile()
现在,如果要指定客户端SSL,则需要将其配置为FireFox配置文件的首选项。我正在尝试查找所有首选项的列表,以便可以使用它。
答案1
小编典典你可以看一下profile.DEFAULT_PREFERENCES
这是json
在python2.7/site-packages/selenium/webdriver/firefox/webdriver_prefs.json
{u''frozen'': {u''app.update.auto'': False, u''app.update.enabled'': False, u''browser.EULA.3.accepted'': True, u''browser.EULA.override'': True, u''browser.displayedE10SNotice'': 4, u''browser.download.manager.showWhenStarting'': False, u''browser.link.open_external'': 2, u''browser.link.open_newwindow'': 2, u''browser.offline'': False, u''browser.reader.detectedFirstArticle'': True, u''browser.safebrowsing.enabled'': False, u''browser.safebrowsing.malware.enabled'': False, u''browser.search.update'': False, u''browser.selfsupport.url'': u'''', u''browser.sessionstore.resume_from_crash'': False, u''browser.shell.checkDefaultBrowser'': False, u''browser.tabs.warnOnClose'': False, u''browser.tabs.warnOnOpen'': False, u''datareporting.healthreport.logging.consoleEnabled'': False, u''datareporting.healthreport.service.enabled'': False, u''datareporting.healthreport.service.firstRun'': False, u''datareporting.healthreport.uploadEnabled'': False, u''datareporting.policy.dataSubmissionEnabled'': False, u''datareporting.policy.dataSubmissionPolicyAccepted'': False, u''devtools.errorconsole.enabled'': True, u''dom.disable_open_during_load'': False, u''extensions.autoDisableScopes'': 10, u''extensions.blocklist.enabled'': False, u''extensions.logging.enabled'': True, u''extensions.update.enabled'': False, u''extensions.update.notifyUser'': False, u''javascript.enabled'': True, u''network.http.phishy-userpass-length'': 255, u''network.manage-offline-status'': False, u''offline-apps.allow_by_default'': True, u''prompts.tab_modal.enabled'': False, u''security.csp.enable'': False, u''security.fileuri.origin_policy'': 3, u''security.fileuri.strict_origin_policy'': False, u''security.warn_entering_secure'': False, u''security.warn_entering_secure.show_once'': False, u''security.warn_entering_weak'': False, u''security.warn_entering_weak.show_once'': False, u''security.warn_leaving_secure'': False, u''security.warn_leaving_secure.show_once'': False, u''security.warn_submit_insecure'': False, u''security.warn_viewing_mixed'': False, u''security.warn_viewing_mixed.show_once'': False, u''signon.rememberSignons'': False, u''toolkit.networkmanager.disable'': True, u''toolkit.telemetry.enabled'': False, u''toolkit.telemetry.prompted'': 2, u''toolkit.telemetry.rejected'': True}, u''mutable'': {u''browser.dom.window.dump.enabled'': True, u''browser.newtab.url'': u''about:blank'', u''browser.newtabpage.enabled'': False, u''browser.startup.homepage'': u''about:blank'', u''browser.startup.page'': 0, u''dom.max_chrome_script_run_time'': 30, u''dom.max_script_run_time'': 30, u''dom.report_all_js_exceptions'': True, u''javascript.options.showInConsole'': True, u''network.http.max-connections-per-server'': 10, u''startup.homepage_welcome_url'': u''about:blank'', u''webdriver_accept_untrusted_certs'': True, u''webdriver_assume_untrusted_issuer'': True}}
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中的Firefox上加载图像和CSS渲染-Python和selenium控制已经打开的火狐的介绍到此结束,谢谢您的阅读,有关Firefox + Selenium WebDriver并自动下载csv文件、perl – 使用Firefox 26的Selenium Webdriver 2?、Python Selenium-FireFox Webdriver配置文件首选项中可能有哪些键、python+selenium webdriver.firefox()方式配置浏览器设置等更多相关知识的信息可以在本站进行查询。
本文标签: