python + selenium 学习笔记 -摘要】的更多相关文章

一.浏览器操作相关 from selenium import webdriver driver = webdriver.Chrome() driver.maximize_window() # 窗口最大化 driver.set_window_size(400,800) # 设置窗口大小 driver.back() # 回退一层 driver.forward() # 前进一层 driver.quit() # 退出浏览器 driver.close() # 关闭浏览器 二.元素定位 # 根据id定位 d…
读取txt的内容并用百度查找搜索 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 # 打开浏览器 7 dr = webdriver.Firefox() 8 dr.get("http://www.baidu.com") 9 10 ''' 11 # 读取列表的 12 words = ['python', 'selenium', 'webdriver'] 13 14 for word in wor…
运行少量case时 1 # coding = utf-8 2 3 from selenium import webdriver 4 import unittest 5 import time 6 from HTMLTestRunner import HTMLTestRunner 7 8 class MyTest(unittest.TestCase): 9 '''百度搜索测试''' 10 11 def setUp(self): 12 self.driver = webdriver.Firefox(…
这篇笔记主要是从Python官网的Tutorial上截取下来,再加上个人理解 1. 在交互模式下,下划线'_'还可以表示上一步的计算结果 2.引号转义问题. 从下图总结的规律是,字符串里的引号如果和引住字符串的引号是相同的,字符串里的引号需要转义.不同则不需要. 最后一个例子看似没变化,加上print()就不同了 加print()和不加print()的区别: Print() function produces a more readable output, by omitting the enc…
1.用pip命令安装模块 pip install 模块名 e.g. pip install qrcode 2.用pip卸载模块 pip uninstall 模块名 e.g. pip uninstall qrcode 3.pip查看已经安装的所有模块 pip list 4.pip查看模块目前有最新版本的 pip list --outdated 5.pip升级模块pip升级:python -m pip install --upgrade pip 模块升级:pip install --upgrade…
运行脚本时间比较长时可以不打开浏览器测试,这样在测试运行时,电脑还是可以用作其他操作的. 只需要在运行脚本上加上下面代码的678行即可 1 # coding = utf-8 2 3 from selenium import webdriver 4 import time 5 6 option = webdriver.FirefoxOptions() 7 option.set_headless() 8 br = webdriver.Firefox(firefox_options=option) 9…
涉及方法 get_screenshot_as_file() 1 # coding = utf-8 2 3 from selenium import webdriver 4 from time import sleep 5 6 dr = webdriver.Firefox() 7 dr.get("http://www.baidu.com") 8 9 dr.find_element_by_id("kw").send_keys("selenium")…
涉及到的三个方法 set_window_size()  用于设置浏览器窗口的大小 e.gset_window_size(600,600) window.scrollTo() 用于设置浏览器窗口滚动条的水平和垂直位置window.scrollTo(300,120) 其中300左边距,120上边距 execute_script() 执行JavaScript代码来移动滚动条的位置 1 # coding = utf-8 2 3 from selenium import webdriver 4 from…
在火狐浏览器上传文件 上传前,同一个HTML文件在火狐和Edge浏览器显示有些不同 这是Firefox浏览器的显示 这是Edge浏览器 上传后 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os 5 import time 6 7 dr = webdriver.Firefox() 8 file_path = "file:///" + os.path.abspath('upfile.html') 9 dr.g…
如下图所示,这种窗口是不能通过前端工具对其进行定位的,这里可以通过switch_to_alert()方法去接受这个弹窗 1 # coding = utf-8 2 3 from selenium import webdriver 4 from selenium.webdriver.common.action_chains import ActionChains 5 import time 6 7 dr = webdriver.Firefox() 8 dr.get("http://www.baidu…
1.多表单切换 下图为待测页面:内嵌百度首页 切换到百度首页进行操作 1 # coding = utf-8 2 3 from selenium import webdriver 4 import os 5 import time 6 7 dr = webdriver.Firefox() 8 file_path = 'file:///' + os.path.abspath('frame.html') 9 dr.get(file_path) 10 11 # 切换到iframe(id="if"…
1.8种针对单个元素的定位方法 find_element_by_id() find_element_by_name() find_element_by_class_name() find_element_by_tag_name() find_element_by_link_text() find_element_by_partial_link_text() find_element_by_xpath() find_element_by_css_selector() 2..8种针对多个元素的定位方…
1.submit() submit()方法用于提交表单.如在搜索框输入关键字后按回车键进行查询操作,就可用submit()方法模拟.若不能按回车键进入下一步,则不能用submit()举例,百度的查询提交. 1 from selenium import webdriver 2 3 dr = webdriver.Firefox() 4 dr.get("http://www.baidu.com") 5 6 dr.find_element_by_id("kw").send_…
发送简单的邮件 用一个QQ邮箱发送到另一个QQ邮件. 首先设置QQ邮箱,邮箱设置 -> 账号 开启SMTP服务,点击开启按钮,按提示进行操作,需要1毛钱的短信费.开启后如下所示 1 # coding = utf-8 2 3 import smtplib 4 from email.header import Header 5 from email.mime.text import MIMEText 6 7 # 发送邮箱 8 sender='12*****@qq.com' 9 # 发送密码,即开启s…
unittest单元测试框架包括 Test Case,  Test Suite, Test Runner, Test Fixture Test Cases 组成Test Suite, Test Runner去执行test suite/case, Test Fixture通过覆盖Test Case的setUp()和tearDown()方法来实现. 以上图为例 一个TestCase写法如下 若只运行testadd.py的用例,直接运行这份文件即可,但若相一次性运行这个项目的所有case时,需要用到r…
repr(x).rjust(n)  左侧空格填充,右侧列对齐,str()和repr()是一种输出,也可不用,直接x.rjust() repr(x).ljust(n)  右侧空格填充,左侧列对齐 repr(x).rjust(n)  两侧空格填充,居中列对齐 x输出字符串,n位数 1 for x in range(1, 5): 2 print(repr(x).ljust(5), repr(x*x).center(5),repr(x*x*x).rjust(5)) 3 4 # 输出 5 ('1 ', '…
1 def f(a, L=[]): 2 L.append(a) 3 return L 4 5 print f(5) 6 print f(2) 输出 1 def f(a, L=None): 2 if L is None: 3 L = [] 4 L.append(a) 5 return L 6 7 print f1(5) 8 print f1(2) 输出 上面两个函数的区别,f()输出的结果是累加的,f1()输出的结果是独立的 If you don't want the default to be…
os模块是关于文件/目录方面的 导入语法 import os 相关方法 path.abspath()   用来获取当前路径下的文件 os.path.abspath('checkbox.html')  这句获得的结果是E:/Python-Project/threeCases/checkbox.html,但是不能用浏览器打开. 可以在前面加上file:/// 如下 file_path = 'file:///' + os.path.abspath('checkbox.html')  这句获得的结果是f…
用qrcode模块生成二维码 # coding = utf-8 import qrcode qr = qrcode.QRCode( version=1, error_correction=qrcode.ERROR_CORRECT_Q, box_size=4, border=2 ) qr.add_data("http://www.baidu.com") qr.make(fit=True) # 产生的二维码根据内容自动扩充版本.举例,指定version=1的尺寸是21*21,但二维码内容可…
跟着网络课程学了几个小程序. 1.判断a字符串是否为b字符串的子串 1 # coding = utf-8 2 3 # 判断str_a字符串是否为str_b字符串的子串 4 5 str_a = "欢迎" 6 str_b = "欢迎大家的到来" 7 8 9 def is_sub_str(sub_strs, strs): 10 """ 11 判断sub_strs是否为strs的子串 12 :param sub_strs: 待判断的子串 13…
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark SQL相关的知识,如果对Spark不熟的同学可以先看看之前总结的两篇文章: [原]Learning Spark (Python版) 学习笔记(一)----RDD 基本概念与命令 [原]Learning Spark (Python版) 学习笔记(二)----键值对.数据读取与保存.共享特性 #####…
原文链接:Python Click 学习笔记 Click 是 Flask 的团队 pallets 开发的优秀开源项目,它为命令行工具的开发封装了大量方法,使开发者只需要专注于功能实现.恰好我最近在开发的一个小工具需要在命令行环境下操作,就写个学习笔记. 国际惯例,先来一段 "Hello World" 程序(假定已经安装了 Click 包). # hello.py import click @click.command() @click.option('--count', default…
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": "电脑","price":"1999"}, {"name": "鼠标", "price": "10"}, {"name": "游艇", &q…
Python Flask学习笔记之模板 Jinja2模板引擎 默认情况下,Flask在程序文件夹中的templates子文件夹中寻找模板.Flask提供的render_template函数把Jinja2模板引擎集成到了程序中. 渲染模板 创建文件夹 mkdir app/templates 改写代码 # routes.py from flask import render_template from app import app @app.route('/') @app.route('/index…
Python Flask学习笔记之Hello World 安装virtualenv,配置Flask开发环境 virtualenv 虚拟环境是Python解释器的一个私有副本,在这个环境中可以安装私有包,而且不会影响系统中安装到全局Python解释器.虚拟环境非常有用,可以在系统的Python解释器中避免包的混乱和版本的冲突,为每个程序单独创建虚拟环境,可以保证程序只能访问虚拟环境中的包从而保持全局解释器的干净整洁. 安装 sudo apt-get install python-virtualen…
获取字段唯一值工具- -ArcPy和Python案例学习笔记   目的:获取某一字段的唯一值,可以作为工具使用,也可以作为函数调用 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com 使用方法: 工具: 函数:GetUniqueValuesFun('qxjm','name') 数据: 结果: 联系方式:谢老师,135-4855-4328,xiexiaokui#qq.com      …
Python高级学习笔记,此笔记中包含Linux操作系统.Html+CSS+JS.网络协议等. 所有思维导图为本人亲手所画,请勿用于商用. 大哥们,求点赞哦. 第一天笔记:链接 第二天笔记:链接 第三天笔记:链接 第四天笔记:链接 第五天笔记:链接 第六天笔记:链接 进程笔记 线程笔记 TCP协议 HTTP协议…
初入python+selenium学习之路,总会遇到这样那样的问题.IndentationError: unexpected indent,这个坑我已经踏进数次了,索性记录下来.都知道Python对代码格式要求挺严格,这个message是在告诉你:你的格式有问题,要检查下tab和空格,可能是没对齐 解决过程: 根据错误位置提示,发现是这个函数除了问题,如下图: 红框圈出的缩进没有对齐,对齐之后就OK了 执行结果成功:  我踏过的,是不曾虚度的昨天,我去向的 ,永远是比今天更好的远方…
selenium 学习整理 初学者,如果有不当得地方请指出,非常感谢. 准备事项: 1. Python 安装包 安装Python,并勾选添加环境变量. 安装完成后,打开dos窗口,输入python,看能否进入python命令行模式.如果不能就手动添加一下环境变量. 2. Chrome 安装包(其他浏览器也可以,Chrome支持得比较好:如果用IE得话,需要再设置--安全,关闭浏览器得保护模式,一个四个) 3. 浏览器版本对应得ChromeDriver.exe (去浏览器官网可以找到,必须和浏览器…
Python教程 Python 教程 Python 简介 Python 环境搭建 Python 中文编码 Python 基础语法 Python 变量类型 Python 运算符 Python 条件语句 Python 循环语句 Python 数字 Python 列表(List) Python 字符串 Python 元组 Python 字典(Dictionary) Python 日期和时间 Python 函数 Python 模块 Python File及os模块 Python文件IO Python 异…