![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
selenium
weixin_37913516
这个作者很懒,什么都没留下…
展开
-
selenium-浏览器复用&cookie复用
浏览器复用流程chrome浏览器放入环境变量中打开调试模式:命令行输入 chrome --remote-debugging-port=9222(注意:Mac输入的命令是:Google\ Chrome --remote-debugging-port=9222)python中的关键代码:chrome_arg=webdriver.ChromeOptions()chrome_arg.debugger_address=‘127.0.0.1:9222’self.driver=webdriver.Chrom原创 2021-03-21 16:15:54 · 493 阅读 · 0 评论 -
selenium-弹窗处理
介绍在页面操作中有时会遇到javascript所生成的alert、confirm以及prompt弹窗,可以使用switch_to.alert()方法定位到,然后使用text/accept/dismiss/send_keys等方法进行操作操作alert常用的方法switch_to.alert():获取当前页面上的警告框text:返回alert/confirm/prompt中的文字信息accept():接受现有警告框dismiss():解散现有警告框send_keys(keysToSend)原创 2021-03-09 20:17:12 · 121 阅读 · 0 评论 -
selenium-文件上传
input标签可以直接使用send_keys(文件地址)上传文件用法el=driver.find_element_by_id(‘上传按钮id’)el.send_keys(‘文件路径+文件名’)例子import timefrom os import pathfrom selenium import webdriverclass TestFile: def setup(self): self.driver = webdriver.Chrome()原创 2021-03-09 19:59:02 · 42 阅读 · 0 评论 -
selenium-执行javascript脚本
用法selenium能够执行js,使得selenium拥有更为强大的能力。既然能执行js,那么js能做的事情,selenium应该大部分也能做直接使用js操作页面,能解决很多click()不生效的问题页面滑动到底部,顶部处理富文本,时间控件的输入javascript的一些用法document.titlewindow.alert(“hello world”)JSON.stringify(performance.timing)代码中调用js页面滑动到底部self.driver.e原创 2021-03-07 18:04:08 · 184 阅读 · 0 评论 -
selenium-多frame处理
在web自动化中,如果一个元素定位不到,那么很大可能是在iframe中什么是frame?frame是html的框架,在html中,所谓的框架就是可以在同一个浏览器中显示不止一个页面基于html的框架,又分为垂直框架和水平框架(cols、rows)frame 分类frame标签包含framest、frame、iframe三种framest和普通的标签一样,不会影响正常的定位,可以使用index、id、name、webelement任意种方式定位frame而frame与iframe对sele原创 2021-03-04 20:17:49 · 216 阅读 · 0 评论 -
selenium-多窗口处理
多窗口处理点击某些链接,会重新打开一个窗口,对于这种情况,想在新页面上操作,就得先切换窗口了获取窗口的唯一标识用句柄表示,所以只需要切换句柄,就可以在多个页面灵活操作了多窗口处理流程先获取到当前的窗口句柄(driver.current_window_handle)再获取到所有的窗口句柄(driver.window_handles)判断是否是想要操作的窗口,如果是,就可以对窗口进行操作,如果不是,跳转到另外一个窗口,对另一个窗口进行操作(driver.switch_to_window)例原创 2021-02-25 21:13:06 · 597 阅读 · 0 评论 -
selenium-TouchAction
参考文档:https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.touch_actionshttps://www.selenium.dev/selenium/docs/api/py/webdriver/selenium.webdriver.common.touch_actions.html介绍类似于ActionChains,AchtionChains只是针对PC端程序鼠标模拟的一系列操作原创 2021-02-25 10:23:21 · 216 阅读 · 0 评论 -
selenium-ActionChains
介绍官方文档:https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.action_chainsActionChains:执行PC端的鼠标点击、双击、右键、拖拽等事件TouchActions:模拟PC和移动端的点击、滑动、拖拽、多点触控等多种手势操作执行原理调用ActionChains的方法时,不会立即执行,而是将所有的操作,按顺序存放在一个队列里,当你调用perform()方法时,队列原创 2021-02-24 21:18:05 · 130 阅读 · 0 评论 -
selenium-介绍&显式/隐式等待&元素定位
selenium支持web浏览器的自动化,主要由3个工具构成:WebDriver、IDE、Grid官网:https://www.selenium.dev/chromedriver下载地址:http://npm.taobao.org/mirrors/chromedriver配置环境变量vim ~/.bash_profile检查是否配置好:直接在控制台输入chromedriver学习文档:https://selenium-python.readthedocs.io/隐式等待:设置一个等待时间,轮询原创 2021-02-02 18:44:24 · 205 阅读 · 0 评论