Python爬虫 | Selenium详解
一、简介
网页三元素:
html负责内容;
css负责样式;
JavaScript负责动作;
从数据的角度考虑,网页上呈现出来的数据的来源:
html文件
ajax接口
javascript加载
如果用requests对一个页面发送请求,只能获得当前加载出来的部分页面,动态加载的数据是获取不到的,比如下拉滚轮得到的数据。selenium最初 ...
python操作Excel表格
一、openpyxl介绍安装
1.为什么要学Excel
存测试数据
有时候有大批量的数据,存到TXT文件里面显然不是最佳的方式,我们可以存到Excel里面去,第一方便我们存数据和做数据,另一方面方便我们读取数据,比较明朗。测试的时候就从数据库中读取出来,这点是非常重要的。
存测试结果
可以批量把结果存入到E ...
Python爬虫进阶 | 异步协程
一、背景
之前爬虫使用的是requests+多线程/多进程,后来随着前几天的深入了解,才发现,对于爬虫来说,真正的瓶颈并不是CPU的处理速度,而是对于网页抓取时候的往返时间,因为如果采用requests+多线程/多进程,他本身是阻塞式的编程,所以时间都花费在了等待网页结果的返回和对爬取到的数据的写入上面。而如果采用非阻 ...
Python爬虫-抓取网页数据并解析,写入本地文件
之前没学过Python,最近因一些个人需求,需要写个小爬虫,于是就搜罗了一批资料,看了一些别人写的代码,现在记录一下学习时爬过的坑。
如果您是从没有接触过Python的新手,又想迅速用Python写出一个爬虫,那么这篇文章比较适合你。
首先,我通过:
https://mp.weixin.qq.com/s/ET9HP2n3905PxBy4ZLmZNw
找 ...
基于Python的Appium环境搭建合集
自动化一直是测试圈中的热聊,也是大家追求的技术方向。在测试中,往往回归测试也是测试人员的“痛点”。对于迭代慢、变更少的功能,就能用上自动化来替代人工回归,减轻工作量。
问题
在分享环境搭建之前,先抛出我的一个疑问吧。
app启用时,分不同的场景:
1.首次安装启用,有欢迎页;
2.非首次启用,直接进入到登录页; ...
Python爬虫 | Scrapy详解
一.Scrapy框架简介
何为框架,就相当于一个封装了很多功能的结构体,它帮我们把主要的结构给搭建好了,我们只需往骨架里添加内容就行。scrapy框架是一个为了爬取网站数据,提取数据的框架,我们熟知爬虫总共有四大部分,请求、响应、解析、存储,scrapy框架都已经搭建好了。scrapy是基于twisted框架开发而来,twi ...
python执行cmd命令
我们在做手机端自动化的时候有时候可能会遇到需要执行cmd命令完成用例,我们一起学习下,通过python脚本执行cmd命令
cmd是什么
cmd是command的缩写.即命令提示行(CMD),是在OS / 2 , Win为基础的操作系统(包括Windows 2000和XP中, Vista中,和Server 2003 )下的“MS-DOS 方式”。中文版Windows XP 中的命令提示符 ...
Python中@staticmethod和@classmethod的作用和区别
Python有3种方法,静态方法(staticmethod),类方法(classmethod)和实例方法。下面用代码举例。
对于一般的函数foo(x),它跟类和类的实例没有任何关系,直接调用foo(x)即可。
# -*- coding:utf-8 -*-
def foo(x):
print("running foo(%s)" % x)
foo("test")
在类A里面的实例方法foo(self, x),第一个参数是self, ...
零基础Python接口测试教程
目录一、Python基础Python简介、环境搭建及包管理Python简介环境搭建包管理Python基本语法基本数据类型(6种)1. 数字Number2. 字符串String3. 列表List4. 元组Tuple5. 集合Set6. 字典Dict条件/循环条件判断循环文件读写(文本文件)文件操作方法文件打开模式函数/类函数定义和调用参数和返回值函数作为参数(如: 装饰器)函数嵌 ...
Python 常见报错类型
一、TypeError:类型错误,对象用来表示值的类型非预期类型时发生的错误
错误例子:
age=18
print(‘我的年龄是’+age)
报错信息:TypeError: can only concatenate str (not "int") to st ...
【学习笔记】PYTHON语言程序设计(北理工 嵩天)
1 Python基本语法元素1.1 程序设计基本方法计算机发展历史上最重要的预测法则 摩尔定律:单位面积集成电路上可容纳晶体管数量约2年翻倍 cpu/gpu、内存、硬盘、电子产品价格等都遵循此定律50年来计算机是唯一一个指数发展的领域源代码、目标代码(机器代码)编译、解释静态语言、脚本语言静态语言编 ...
python graphviz的使用(画图工具)
参考文章1
参考文章2
一、graphviz安装及配置
graphviz实际上是一个绘图工具,可以根据dot脚本画出树形图等。
1、windows安装
安装graphviz软件:https://graphviz.gitlab.io/_pages/Download/Download_windows.html
配置环境变量:把bin文件夹的路径加入到环境变量path里
安装python的graphviz模块:pip install g ...
python并发编程之多进程(实践篇)
一 multiprocessing模块介绍
python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程。Python提供了multiprocessing。
multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),multiprocessing模块的功能众多:支持子进程、通信和共享数据、执 ...
python pillow模块用法
pillow
Pillow是PIL的一个派生分支,但如今已经发展成为比PIL本身更具活力的图像处理库。pillow可以说已经取代了PIL,将其封装成python的库(pip即可安装),且支持python2和python3,目前最新版本是3.0.0。
Pillow的Github主页:https://github.com/python-pillow/Pillow illow的文档(对应版本v3.0.0): https:// ...
python简单面试题
在这个即将进入金9银10的跳槽季节的时候,肯定需要一波面试题了,安静总结了一些经常遇到的python面试题,让我们一起撸起来。
python面试题
1、求出1-100之间的和
# coidng:utf-8
a = 0
for i in range(0,100):
a += (i+1)
print(a)5050
# 也可以使用函数sum
sum = sum(range(1,101))
print(sum)5050
2、冒泡排序 ...
python:动态参数*args
动态参数
顾名思义,动态参数就是传入的参数的个数是动态的,可以是1个、2个到任意个,还可以是0个。在不需要的时候,你完全可以忽略动态函数,不用给它传递任何值。
Python的动态参数有两种,分别是*args和**kwargs,这里面的关键是一个和两个星号的区别,而不是args和kwargs在名字上的区别,实际上你可以使用*any或** ...
Python调用DLL动态链接库——ctypes使用
最近要使用python调用C++编译生成的DLL动态链接库,因此学习了一下ctypes库的基本使用。
ctypes是一个用于Python的外部函数库,它提供C兼容的数据类型,并允许在DLL或共享库中调用函数。
一、Python调用DLL里面的导出函数
1.VS生成dll
1.1 新建动态链接库项目
1.2 在myTest.cpp中输入以下内容:
// myTest.cpp : 定义 DLL ...
Python 如何将字符串转为字典
Python 如何将字符串转为字典
在工作中遇到一个小问题,需要将一个 python 的字符串转为字典,比如字符串:
user_info = '{"name" : "john", "gender" : "male", "age": 28}'
我们想把它转为下面的字典:
user_dict = {"name" : "john", "gender" : "male", "age": 28}
有以下几种方法:
1、通过 json 来转 ...
Python数据分析之numpy数组全解析
1 什么是numpy
numpy是一个在Python中做科学计算的基础库,重在数值计算,也是大部分Python科学计算库的基础库,多用于大型、多维数据上执行数值计算。
在NumPy 中,最重要的对象是称为 ndarray 的N维数组类型,它是描述相同类型的元素集合,numpy所有功能几乎都以ndarray为核心展开。ndarray 中的每个元素都是数据类型对象 ...
纯 Python 实现的 Google 批量翻译 [原创]
本文链接:https://www.cnblogs.com/popapa/p/google_translate.html
测试通过时间:2019-8-20
参阅:C#实现谷歌翻译API、Python之Google翻译爬虫
首先声明,没有什么不良动机,因为经常会用 translate.google.cn,就想着用 Python 模拟网页提交实现文档的批量翻译。据说有 API,可是要收费。
生成 Token
Google 为防爬虫 ...