网课很多看不完呀 所以动手做了一个基础的自动答题和下一节的程序 用到了python 3 selenium Chrome 如何自动化Chrome?https://www.cnblogs.com/eternal1025/p/8880245.html 配置好之后上代码 源码下载地址 https://git ...
分类:
编程语言 时间:
2019-10-31 23:46:56
阅读次数:
314
代码如下:from selenium import webdriverfrom time import sleepdriver=webdriver.Chrome()driver.get("https://mail.163.com/")sleep(1)driver.find_element_by_id ...
分类:
编程语言 时间:
2019-10-30 10:30:33
阅读次数:
147
基本功能: 附加: 最近用python+selenium+pytest,写了个测试小工具用来自动化登陆浏览器,一方面是方便管理网址、账号、密码,存放在脚本中,另一方面也省去了频繁输入登陆网站的操作,节省了不少时间。 但这个小工具用起来存在明显问题:每次都新启一个浏览器,多了后就是这样的 根本不知道谁 ...
分类:
Web程序 时间:
2019-10-26 10:58:12
阅读次数:
257
思路 1. 输入用户名密码点击登陆 2. 获取验证码的原始图片与有缺口的图片 3. 找出两张图片的缺口起始处 4. 拖动碎片 功能代码段 初始化相关参数 获取按钮、输入框、碎片拖动按钮对象 获取带有碎片的图片和完整图片 判断像素点是否相同 python def is_pixel_equal(self ...
分类:
编程语言 时间:
2019-10-20 13:06:25
阅读次数:
80
测试功能:博客园首页网站分类的一级菜单链接和二级菜单链接的点击。 遇到的问题: 1.循环点击二级菜单时,点击了一个一级菜单下的第一个二级菜单后,页面会刷新,再定位同一个一级菜单次下的第二个二级菜单时, 会报错:找不到第二个二级菜单,这时需要对一级菜单重新定位赋值; 2.当一级菜单下的二级菜单太多时, ...
分类:
编程语言 时间:
2019-10-19 18:53:34
阅读次数:
94
Selenium 体系中用来操作浏览器的 API 就是 WebDriver,WebDriver 针对多种语言都实现了一套 API,支持多种编程语言。 Selenium 通常用来做自动化测试,或者编写网络爬虫。 通常我们说的 Selenium 自动化操作,指的就是 WebDriver 中提供的控制方法 ...
分类:
编程语言 时间:
2019-10-16 21:54:59
阅读次数:
115
元素定位是 WebDriver 很重要的部分,特别对于自动化测试来说。 要想操作元素,首先必须要找到元素。 我们做自动化测试,就是需要通过模拟手工对元素的操作来实现自动化。脚本无法做到指哪打哪,不能像手工操作那样鼠标移过去点一下就行,毕竟代码没有自我辨别能力。 开发者工具 开发者工具是浏览器自带的网 ...
分类:
编程语言 时间:
2019-10-16 21:51:30
阅读次数:
93
了解了 开发者工具 和 HTML 结构 后,接下来,就来看看在 Python + Selenium 中如何查找元素了。 查找元素,是 WebDriver 中的核心部分之一。WebDriver提供了八种定位方法,方法如下: | 定位方式 | 方法 | 说明 | |: |: |: | | id | fi ...
分类:
编程语言 时间:
2019-10-16 21:49:26
阅读次数:
84
在日常的网页源码中,我们基于元素的id去定位是最万无一失的,id在单个页面中是不会重复的。但是实际工作中,很多前端开发人员并未给每个元素都编写id属性。 driver.find_element_by_id() 此时,可以基于class属性来定位元素。常见的基于class定位元素的selenium写法 ...
分类:
编程语言 时间:
2019-10-15 12:51:52
阅读次数:
85
上一节,学习了Ajax,Ajax 其实也是JS 动态渲染的页面的一种形式,通过直接分析Ajax,仍然可以借助requests 或者 urllib 来实现数据爬取。 但是JS动态渲染的页面不止Ajax 一种;还有就是像淘宝这种页面,即使是Ajax 获取的数据,但是其Ajax 接口含有很多加密参数,我们 ...
分类:
编程语言 时间:
2019-10-13 17:03:10
阅读次数:
791