用于selenium的python绑定

selenium的Python项目详细描述


简介

selenium webdriver的python语言绑定。

selenium包用于从python自动进行web浏览器交互。

Home:http://www.seleniumhq.org
Docs:selenium package API
Dev:https://github.com/SeleniumHQ/Selenium
PyPI:https://pypi.org/project/selenium/
IRC:#selenium channel on freenode

支持多种浏览器/驱动程序(Firefox、Chrome、Internet Explorer)以及远程协议。

支持的Python版本

  • Python2.7,3.4+

安装

如果您的系统上有pip,您可以简单地安装或升级python绑定:

pip install -U selenium

或者,您可以从PyPI(例如selenium-3.141.0.tar.gz)下载源发行版,将其取消归档,然后运行:

python setup.py install

注意:您可能需要考虑使用virtualenv来创建独立的python环境。

驱动程序

selenium需要一个驱动程序来与所选浏览器交互。火狐, 例如,需要geckodriver,在运行下面的示例之前需要安装该程序。确保它在您的路径中,例如,将它放在/usr/bin/usr/local/bin中。

如果不遵守此步骤,将出现一个错误selenium.common.exceptions.webdriverexception:消息:“geckodriver”可执行文件需要在路径中。

其他受支持的浏览器将提供自己的驱动程序。下面是一些更流行的浏览器驱动程序的链接。

Chrome:https://sites.google.com/a/chromium.org/chromedriver/downloads
Edge:https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/
Firefox:https://github.com/mozilla/geckodriver/releases
Safari:https://webkit.org/blog/6900/webdriver-support-in-safari-10/

示例0:

  • 打开新的Firefox浏览器
  • 在给定的url加载页面
fromseleniumimportwebdriverbrowser=webdriver.Firefox()browser.get('http://seleniumhq.org/')

示例1:

  • 打开新的Firefox浏览器
  • 加载雅虎主页
  • 搜索“seleniumhq”
  • 关闭浏览器
fromseleniumimportwebdriverfromselenium.webdriver.common.keysimportKeysbrowser=webdriver.Firefox()browser.get('http://www.yahoo.com')assert'Yahoo'inbrowser.titleelem=browser.find_element_by_name('p')# Find the search boxelem.send_keys('seleniumhq'+Keys.RETURN)browser.quit()

例2:

selenium webdriver通常用作测试web应用程序的基础。下面是一个使用python标准unittest库的简单示例:

importunittestfromseleniumimportwebdriverclassGoogleTestCase(unittest.TestCase):defsetUp(self):self.browser=webdriver.Firefox()self.addCleanup(self.browser.quit)deftestPageTitle(self):self.browser.get('http://www.google.com')self.assertIn('Google',self.browser.title)if__name__=='__main__':unittest.main(verbosity=2)

硒服务器(可选)

对于普通的webdriver脚本(非远程),不需要java服务器。

但是,要使用SeleniumWebDriverRemote或传统的SeleniumAPI(SeleniumRC),还需要运行Selenium服务器。服务器需要Java运行时环境(JRE)。

分别从以下位置下载服务器:http://selenium-release.storage.googleapis.com/3.141/selenium-server-standalone-3.141.0.jar

从命令行运行服务器:

java -jar selenium-server-standalone-3.141.0.jar

然后运行python客户端脚本。

使用来源卢克!

联机查看源代码:

official:https://github.com/SeleniumHQ/selenium/tree/master/py

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java获取JEditorPane中字符的绝对位置   java Datetime:将时间段拆分为天、小时和分钟   java是使此HashMap更高效的一种方法   java项目reactor:collectList()之后的block()对Flux不起作用。创建()   java在Mac OSX上安装OpenCV   java递归地确定一组数字是否包含两个总和相等的子集   Quad2D曲线上的几何图形Java绘图箭头   java将SSL证书导入Glassfish 4。十、   java Android未找到处理Intent MediaScanner的活动   EclipseJava。安全cert.CertificateParsingException:java。木卫一。IOException:主题密钥,无法创建EC公钥   java我能在O(M log N)时间内完成吗?   java跟踪eclipse中的资源更改也在中。元数据和。项目   java如何完全禁用Android键盘   java返回到上一个活动