from selenium import webdriver browser=webdriver.Chrome() browser.get('https://www.bilibili.com/anime/timeline/') r=browser.find_elements_by_class_name("today") for i in r: print(i.text) 先上代码 第一句话是加载selenium库 第二句是获得chrome浏览器 第三句是启动浏览器 在 浏览器看到b站的…
python selenium自动化点击页面链接测试 需求:现在有一个网站的页面,我希望用python自动化的测试点击这个页面上所有的在本窗口跳转,并且是本站内的链接,前往到链接页面之后在通过后退返回到原始页面. 要完成这个需求就必须实现3点: 1. 找到原始页面上面所有的在本窗口内跳转的链接 2. 跳转到目标页面之后,“后退”到原始页面 3. 在原始页面上继续点击后续的链接 首先,要找到页面上的所有链接并不困难.selenium为我们提供了find_elements_by_tag_name方法…
写在前面 爬虫和自动测试,对于python来说是最合适不过也是最擅长的. 开源的项目也很多,例如you-get项目https://github.com/soimort/you-get.盗链和爬虫神器. python+selenium一般用来做自动化测试,也可以用来抽取 html的dom元素,从而作为前端的爬虫使用 这些功能对于一些非常规的需求和自动化测试,可以说是量身打造的. you-get you-get支持的网站,都是直接破解其算法,直接算出playurl的方式,假如有分片,还可以用ffme…
python+selenium+Chrome options参数 Chrome Options常用的行为一般有以下几种: 禁止图片和视频的加载:提升网页加载速度. 添加代理:用于翻墙访问某些页面,或者应对IP访问频率限制的反爬技术. 使用移动头:访问移动端的站点,一般这种站点的反爬技术比较薄弱. 添加扩展:像正常使用浏览器一样的功能. 设置编码:应对中文站,防止乱码. 阻止JavaScript执行 ... Chrome Options是一个配置chrome启动时属性的类,通过这个参数我们可以为C…
以前用selenium调用firefox是不需要驱动的,最近安装了python3.52+最新的firefox 发现调不起来了 搜索以后发现Firefox 47+需要搞个firefox的驱动 geckodriver(.exe) 在家里的电脑上用python+selenium+chrome是可以跑起来的,可是在公司用办公电脑发现有问题,折腾了半天发现是chromedriver的问题,替换了一下好了 坑爹 送上可用的chromedirver下载地址http://pan.baidu.com/s/1pLp…
Web登录测试是很常见的测试!手动测试大家再熟悉不过了,那如何进行自动化登录测试呢!本文作者就用python+selenium结合unittest单元测试框架来进行一次简单但比较完整的cnblog自动化登录测试,可提供点参考!下面就包括测试代码和每种测试情况的截图. 代码如下: ''' cnblog的登录测试,分下面几种情况: (1)用户名.密码正确 (2)用户名正确.密码不正确 (3)用户名正确.密码为空 (4)用户名错误.密码正确 (5)用户名为空.密码正确(还有用户名和密码均为空时与此情况…
最近捡起之前用的Python + Selenium实现工作中需要的登录Office 365功能.(吐槽:国内网络真是卡,登录Office 365实属不易.另外Selenium这样的网站都要墙,无法理解,据说是用了Google的IP,whatever……) 试图研究一下Selenium和WebDriver的关系,看了官方的介绍,先摘录一段有趣的内容: Jump to 2008. The Beijing Olympics mark China’s arrival as a global power,…
准备工作: 1.下载python2.7 http://python.org/getit/ 2.下载下载setuptools [python 的基础包工具] 可以帮助我们轻松的下载,构建,安装,升级,卸载python的软件包. http://pypi.python.org/pypi/setuptools 3.下载pip[python 的安装包管理工具] 有了这个工具,我们只需要一个命令就可以轻松的python的安装任意类库. https://pypi.python.org/pypi/pip 4.解…
使用python+selenium运行自动化脚本时,打印某一段文字出现UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)报错. 原因:编码未进行转换. 解决方式:print时,在后面加上encode("utf-8")即可. 例如: tx = driver.find_element_by_xpath(".//*[@id='1']/…
Functional testing  - python selenium django - Source Code : from selenium import webdriverfrom selenium.webdriver.common.by import By from django.test import LiveServerTestCase class Browser():  #(Run more than one testcases on one browser) browser…
需求:使用python selenium来自动测试一个网站注册的流程. 假设这个网站的注册流程分为三步,需要提供比较多的信息: 在这个流程里面,需要用户填入信息.在下拉菜单中选择.选择单选的radio button.多选框等等比较复杂的页面元素操作. 在开始做的时候,我会按照一个用户真正的填写习惯,参照页面,一步步的定义每个步骤应该进行怎样的操作,我需要查看每一个页面元素的属性,决定选择一个合理的选项,然后再用代码自动化这样的操作.但是反思一下,其实这样的实现方法并不符合一个计算机自动测试的习惯…
Why Automation Testing 现在似乎大家都一致认同一个项目应该有足够多的测试来保证功能的正常运作,而且这些此处的‘测试’特指自动化测试:并且大多数人会认为如果还有哪个项目依然采用人工测试来保证代码的正确性的话,那简直是太落后了,太不可思议了. 但是在我现在的项目里,之前大部分的情况下我们还是在使用手动测试,项目依然在每周一次井然有序的上线着.当然有部分原因是因为项目业务和技术上的特殊性,但是这开始让我思考:我们究竟为什么要进行自动化?什么情况下该进行自动化?自动化测试使用与所有…
最近在关注直播这块儿,开始时直接用ffmpeg写了一个,写得比较烂,卡顿很严重,后来听说了B站开源播放框架ijkplayer,于是就去试试看这是链接 ,一用之下果然不错,逢人便向人安利,可总是有部分同学说看不懂.不会用.其实用法都在readme里写得很清楚了,只要照着做就行了.好吧,我知道其实是你们懒得看 -_-!, 那我就在这儿说说大概的步骤吧. 首先配置环境,需要安装 homebrew,git,yasm (需要ruby环境) 图片截自readme 然后把项目克隆到本地,下载并编译ffmpeg…
由于网页自动化要操作浏览器以及浏览器页面元素,这里笔者就将浏览器及页面元素常用的函数及变量整理总结一下,以供读者在编写网页自动化测试时查阅. from selenium import webdriver driver=webdriver.Firefox() driver.get(r'http://www.baidu.com/') print 'driver attributes:' print dir(driver) elem=driver.find_element_by_id('kw') pr…
前言 本文就python selenium自动化测试实践中所需要的POM设计模式进行分享,以便大家在实践中对POM的特点.应用场景和核心思想有一定的理解和掌握. 为什么要用POM 基于python selenium2开始UI级自动化测试并不是多么艰巨的任务.只需要定位到元素,执行对应的操作即可.下面我们看一下这个简单的脚本实现百度搜索. from selenium import webdriver import time driver = webdriver.Firefox() driver.i…
上两篇的博文中介绍了python selenium的环境搭建和编写的第一个自动化测试脚本,从第二篇的例子中看出来再做UI级别的自动化测试的时候,有一个至关重要的因素,那就是元素的定位,只有从页面上找到这个元素,我们从能对这个元素进行操作,那么我们下来看看如何来定位元素. selenium 提供了8中元素定位的方法(大家要学习元素的定位,首先可以学习下前端的基础知识,这样有利于我们学习自动化测试,大家可以看一下:http://www.runoob.com/) find_element_by_id…
今天记录一下测试小菜鸟alter在测试入门的一点关于python+Selenium+webdriver环境搭建的经历以及资源分享.欢迎交流学习,批评指正. 一.Python的下载与安装 1.python的下载安装,官网链接如下:https://www.python.org/downloads/release/python-362/,选择相应的文件下载 2.安装过程:https://jingyan.baidu.com/article/e73e26c0bad76224acb6a766.html,虽然…
前言 回顾一下python+selenium基础,并整理相关知识点,分享给有需要,在前进道路上的朋友. print打印 #打印Hello World print("Hello World") #\转义符,转义最近的一个字符 #\n换行 print("Hello \nWorld") #\t,4个空格,相当于tab键 print("Hello\tWorld") #输出\,需转义\ print("\\") #输出"等特殊字…
(开开心心每一天~ ---虫瘾师) 直接入正题---Python selenium自动控制浏览器对网页的数据进行抓取,其中包含按钮点击.跳转页面.搜索框的输入.页面的价值数据存储.mongodb自动id标识等等等. 1.首先介绍一下 Python selenium ---自动化测试工具,用来控制浏览器来对网页的操作,在爬虫中与BeautifulSoup结合那就是天衣无缝,除去国外的一些变态的验证网页,对于图片验证码我有自己写的破解图片验证码的源代码,成功率在85%. 详情请咨询QQ群--6070…
问题:用selenium+phantomjs 模拟登陆,网页用JavaScript的alert("登陆成功")弹出框,但是用switch_to_alert().accept()报错,不可执行命令. 目标代码:<script language="javascript">alert('********************');</script> 显示错误: File "sy.py", line 112, in <mo…
Python + Selenium 自动化环境搭建过程 1. 所需组建 1.1 Selenium for python 1.2 Python 1.3 Notepad++ 作为刚初学者,这里不建议使用Python IDE工具,选择一个功能强大的记事本编辑工具就好,例如Notepad++.等以后积累足够了,需要编写更多文件,或者后期简单框架设计,我们再来介绍和使用Pycharm这个IDE工具. 2. 环境搭建 2.1 下载和安装Python 1) 下载Python 2.7.x 到 https://w…
如何使用python完成自动化测试web页面呢?首选selenium   那基于python的selenium如何使用,下面看一段测试案例: 基于python的selenium 安装方法: pip istall selenium 安装完成后,测试程序自动打开百度,输入python selenium   (模拟人工输入) import os,time #使用Chrome 作为测试浏览器需要安装 chromedriver.exe模块,且需要将模块放到Chrome安装位置的根目录下 chromedri…
在做Web自动化过程中,汇总了Python+selenium的API相关方法,给公司里的同事做了第二次培训,分享给大家                                                                                                                     WEB自动化测试培训2 课程目的 一.Webdriver API 的使用 课程内容 1    控制浏览器 Selenium 主要提供的是操作页面上各…
Python +selenium+googledriver 小白的血泪安装使,不停的总结写心得是理解透彻的毕竟之路 一,python的安装: 首先去Python的官网下载安装包:https://www.python.org/ 2.下载完成后如下图所示 3.双击exe文件进行安装,如下图,并按照圈中区域进行设置,切记要勾选打钩的框,然后再点击Customize installation进入到下一步: 4.对于上图中,可以通过Browse进行自定义安装路径,也可以直接点击Install进行安装,点击…
Jenkins简介 Jenkins是Java编写的非常流行的持续集成(CI)服务,起源于Hudson项目.所以Jenkins和Hudson功能相似. Jenkins支持各种版本的控制工具,如CVS.SVN.Git.Mercurial.Perforce和ClearCase,而且可以执行用Apache Ant或Java Maven构建的项目.同时,它也可以利用一些插件.Shell脚本和Windows批处理命令来构建其他平台的项目. Jenkins除了构建软件功能外,还可以用于搭建自动化测试环境,比如…
对WebElement截图 WebDriver.Chrome自带的方法只能对当前窗口截屏,且不能指定特定元素.若是需要截取特定元素或是窗口超过了一屏,就只能另辟蹊径了. WebDriver.PhantomJS自带的方法支持对整个网页截屏. 下面提供几种思路. 方式一 针对WebDriver.Chrome 通过WebDriver的js脚本注入功能,曲线救国. 注入第三方html转canvas的js库(见下方推荐) 获取元素html源码 将html转换为canvas 下载canvas 优点: 截取长…
一.前言: 之前的文章说过, 要写一篇自动化实战的文章, 这段时间比较忙再加回家过11一直没有更新博客,今天整理一下实战项目的代码共大家学习.(注:项目是针对我们公司内部系统的测试,只能内部网络访问,外部网络无法访问) 问: 1.外部网络无法访问,代码也无法运行,那还看这个项目有啥用 2.如何学习本项目 3.如何学习自动化测试(python+selenium) 答: 1.其实代码并不重要,希望大家完完整整的看完这个项目后,自己会有思路有想法,学会这个项目的框架结构和设计思想,把这些能应用到自己的…
python+selenium运行多次新增项目脚本(出错的元素通过by_id的方式定位),当第三次新增时报Message: element not visible的错误,加入等待时间,等页面加载完成,仍旧报相同的错误,错误如下图: 分析原因:前两次新增都是成功的,说明定位元素的代码没有问题; 加入等待时间还是报错,排除了页面没有加载完成的原因 打开开发者模式(F12),在控制台用id进行定位,发现出现了两个元素: 0:input#bankAccountType1.form-control 1:i…
本篇介绍一下python+selenium复杂操作的处理,基于python3.6,selenium3.141,详细资料介绍查看官方API文档,点击这里 一.常见特殊情况处理如iframe/弹窗处理 有时候定位不到元素,是因为需要定位的元素在frame里面,这个时候需要切换到对应的frame里面,再去定位元素 # 切换frame driver.switch_to.frame("frame") # 切入到id="frame"的嵌套中 driver.switch_to.d…
我的环境是: 系统 Python Selenium win10 教育版64位 3.6.4 3.11.0 在Pycharm中安装好Selenium后,输入代码来测试: from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.baidu.com") 然后报错了,TypeErrpr:get() missing 1 required positional argument: 'url',…