如何设置Selenium与Python一起使用?我只想用Python编写/导出脚本,然后运行它们。是否有任何资源?我尝试使用谷歌搜索,但是发现的东西要么是指Selenium(RC)的过时版本,要么是Python的过时版本。
您是说Selenium WebDriver吗?…
先决条件 :根据您的操作系统安装Python
使用以下命令安装
pip install -U selenium
并在您的代码中使用此模块
from selenium import webdriver
您还可以根据需要使用以下许多内容
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
我建议您在没有IDE的情况下运行脚本…这是我的方法
下面的示例显示登录页面自动化
#ScriptName : Login.py
#---------------------
from selenium import webdriver
#Following are html" target="_blank">optional required
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
baseurl = "http://www.mywebsite.com/login.php"
username = "admin"
password = "admin"
xpaths = { 'usernameTxtBox' : "//input[@name='username']",
'passwordTxtBox' : "//input[@name='password']",
'submitButton' : "//input[@name='login']"
}
mydriver = webdriver.Firefox()
mydriver.get(baseurl)
mydriver.maximize_window()
#Clear Username TextBox if already allowed "Remember Me"
mydriver.find_element_by_xpath(xpaths['usernameTxtBox']).clear()
#Write Username in Username TextBox
mydriver.find_element_by_xpath(xpaths['usernameTxtBox']).send_keys(username)
#Clear Password TextBox if already allowed "Remember Me"
mydriver.find_element_by_xpath(xpaths['passwordTxtBox']).clear()
#Write Password in password TextBox
mydriver.find_element_by_xpath(xpaths['passwordTxtBox']).send_keys(password)
#Click Login button
mydriver.find_element_by_xpath(xpaths['submitButton']).click()
还有另一种可以找到任何对象的xpath的方式-
运行脚本-
python Login.py
您也可以使用CSS选择器代替xpath。在大多数情况下,CSS选择器比xpath快一点,并且通常比xpath更受首选(如果要与之交互的元素上没有ID属性)。
如果将光标移动到对象,Firepath也可以将对象的定位器捕获为CSS选择器。您必须更新代码,以使用等效的CSS选择器方法find-
find_element_by_css_selector(css_selector)
问题内容: 使用硒进行GUI测试时,我想使用browsermob监视网络连接。我在这里,这里和这里都找到了一些信息和文档,但是绝对不清楚如何真正使用它。 在文档中显示为: 但是那条路是什么?在哪里找到它? 我也看到了 但对于这个jar文件是什么(如果它是browsermob安装的一部分)或无关的东西,则根本没有任何解释。 如果有人可以提供有关如何使用browsermob以及我需要安装的所有工具的完
问题内容: 我打算为Python安装一个虚拟环境,以使我的Python包分开。这样做的动机之一也是在我的机器上同时存在两个版本的Python(Ubuntu 14.04)。我有以下奇观: 应该以什么顺序安装Python,PIP和virtualenv?有关系吗? 完成后,如何在virtualenv下将两个python版本分开? 假设我正在处理单独的项目,是否建议将每个项目都保存在virtualenv创
问题内容: 我正在尝试对正在编写的C python扩展进行memcheck,但是我无法设置valgrind与python一起使用。我真的很感谢一些建议。仅出于上下文考虑,这是Ubuntu 13.10,python 2.7.5+和valgrind 3.8.1。 根据我的建议,我做了以下工作。 1)下载了python源 2)应用了代码补丁,即“在Objects / obmalloc.c中取消注释Py_
问题内容: 我刚刚在Windows 7计算机上安装了OpenCV。结果,我得到一个新目录: 在此目录中,我有两个文件:和。 然后,我尝试使用from Python。我执行以下操作: 结果,我收到以下错误消息: 我究竟做错了什么? 添加 至于有人建议在这里,我抄的内容的。它没有帮助。 加了2 我的环境变量具有以下值: 我需要改变什么吗?我需要添加一些东西吗? 加3 我认为我的问题很笼统:如何使用图书
问题内容: 我在Vim和Python之间浪费了很多时间。我发现手动将其从Python复制粘贴到Vim,反之亦然,这太慢了。一个坏的例子是: %!python在xrange(25)中为我 打印6 * i \ n 您如何在Vim中直接进行此类调整? [解决了] [说明] 我需要Vim要做的事情,例如打印序列,算术…-我无法在Vim中做的事情。 [?] 有人可以详细说明这一点:“您的脚本可以从stdin
问题内容: 我找到了有关subprocess.check_output()的文档,但是找不到带有参数的文档,而且该文档也不是很深入。我正在使用Python 3(但试图通过Python 3运行Python 2文件) 我正在尝试运行以下命令: -i是argparse的位置参数,test.txt是-i,py2.py是要运行的文件 我尝试了很多(无效)变体,包括: 问题答案: 正确的答案(使用Python