自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(45)
  • 问答 (1)
  • 收藏
  • 关注

原创 appium中常用指令

ADB指令备注adb devices查看连接设备的IDadb start-server启动ADB服务adb kill-server停止ADB服务netstat -ano | findstr 5037查看端口占用情况taskkill -f -pid 11072(占用端口任务的PID)释放端口adb shell dumpsys window windows | findstr mFocusedApp获取当前显示的activityadb push...

2022-05-01 00:20:36 466

原创 pytest常用知识点记录

批量安装三方框架1、新建txt文件,列写待安装框架2、执行指令,完成安装指令:pip install -r install.txtpytest.ini文件:可以自定义一些规则,然后run.py文件直接使用pytest.main()方法执行用例即可run.py备注:addopts :执行参数失败重跑:addopts = -vs --reruns 2根据标签跑场景用例:addopts = -vs -m “smoke or home”testpaths:待执行用例目录pyth..

2022-01-01 22:48:53 408

原创 git远程仓库常用操作

环境安装没啥说的,挺简单的,百度一大堆验证环境是否安装成功任意位置,鼠标右键,是否会出现 Git Bash Here选项git本地仓库设置git config --global user.name “id”git config --global user.email “[email protected]”本地仓库初始化git init码云新建仓库本地生成公钥ssh-keygen -t rsa -C “[email protected]”备注:1、提示输入时,连续三次回车即..

2021-12-30 23:41:35 444

原创 mysql安装

资源文件解压解压到想要放置的目录即可安装目录新建my.ini文件my.ini文件内容[client]# 设置mysql客户端默认字符集default-character-set=utf8[mysqld]# 设置3306端口port = 3306# 设置mysql的安装目录basedir=D:\AAAA\Tools\mysql# 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错datadir=D:\AAAA\Tool.

2021-10-13 20:27:38 83

原创 python+requests最简单的接口请求

import requestsurl = 'https://www.baidu.com/'#直接发送get请求r = requests.get(url)#查看响应码print(r.status_code)#查看响应正文r.encoding ='utf-8'print(r.text)打印结果

2021-10-12 22:10:55 144

原创 jmeter+参数化配置 做简单并发测试

创建setup线程组,设置线程数创建请求创建参数配置参数文件内容运行并查看结果

2021-10-12 21:53:04 146

原创 jmeter参数话配置-CSV数据配置文件

新建请求新建参数配置配置参数后即可调用文本内容

2021-10-12 21:46:10 69

原创 jmeter参数化设置-用户参数

创建请求创建用户参数新建变量请求中引用

2021-10-12 21:06:35 84

原创 Jmeter基本使用方法

工具下载链接:https://pan.baidu.com/s/1o4wbSkgW_RS3BSK8xLbxKg提取码:YYDS工具基本使用下载解压后,进入\apache-jmeter-3.3\bin 中双击jmeter.bat 既可(需要安装jdk环境)运行后画面(会有一个命令行窗口,请勿关闭)新建线程组添加请求填写请求信息添加监听器(查看接口响应等)执行如有报错 请勾选参数编码列正常返回结果(返回结果编码可自行处理)...

2021-10-11 20:05:04 6834

原创 JAVA学习-day2:JAVA枚举

JAVA学习-day2:JAVA枚举//设置枚举类class CarType { enum CarSize{small,middle,big} CarSize size;}class TEST{ public static void main(String[] argStrings) { //创建枚举类 CarType car_01 = new CarType(); car_01.size = CarType.CarSize.small; CarType car_02 = n

2021-07-14 21:58:13 54

原创 JAVA学习-day1:第一个JAVA程序

JAVA学习-day1:第一个JAVA程序public class TEST { public static void main(String[] args) { System.out.println("Hello word!!!"); }}运行报错:解决办法:删除default包中的module-info.java原因分析:https://blog.csdn.net/weixin_40105316/article/details/82529579...

2021-07-14 21:27:15 60

原创 pip批量安装三方库

1、新建txt文本,并每行写入需要安装的库的名称2、cmd 切到当前文件目录3、执行 pip install -r requests.txt

2020-12-23 20:50:05 196 1

原创 python协程

协程函数定义协程函数以async开头import asyncioimport time#定义一个协程函数async def func(): # time.sleep(5) print('AAAAAAAAAAA')#得到协程对象res = func()#创建事件循环loop = asyncio.get_event_loop()#将协程对象加入到事件循环中loop.run_until_complete(res)# #python 3.7 可直接使用asyncio.run

2020-12-21 20:54:47 108

原创 unittest学习之POM设计模式优化

将直接一步步写代码更改为使用unittest模式继承unittest.TestCase 类setUp(self) -> None:前置方法def tearDown(self) -> None:后置方法测试用例方法需要以test开头优化元素等待时间问题from selenium.webdriver.support.wait import WebDriverWaitfrom selenium.webdriver.support import expected_conditions

2020-12-14 23:32:31 353

原创 unittest学习之 套件suite的使用和测试报告的生成

import unittestimport osfrom uintTest.suit_test.test_case import mytestcasefrom HTMLTestRunner import HTMLTestRunner#创建测试套件suite = unittest.TestSuite()#添加测试用例suite.addTest(mytestcase('test_01'))suite.addTest(mytestcase('test_02'))#基于HTMLTestRunne

2020-12-03 23:09:48 503

原创 unitest学习之 skip

import unittestfrom ddt import ddt,unpack,datadef getvalue(s): print('函数调用')@ddtclass mycase(unittest.TestCase): def setUp(self) -> None: print('这是测试准备前的工作') def tearDown(self) -> None: print('这是测试完成后的操作') @unitt

2020-12-03 22:14:31 162

原创 python_ddt学习01

import unittestfrom selenium import webdriverimport time# import ddtfrom ddt import data,ddt@ddt #装饰器来修改功能函数class case001(unittest.TestCase): def setUp(self) -> None: print('用例开始执行') @data(('美国疫情'),('刘亦菲'),('素素')) def test_

2020-12-01 23:00:36 105

原创 xpath学习之爬取4K图片

from lxml import etreeimport requestsimport os#请求连接url = 'http://pic.netbian.com/4kmeinv/'#UA伪装headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36'}#请求页面源

2020-11-22 22:58:49 95

原创 xpath学习01

xpath解析原理实例化一个etree的对象,且需要将被解析的页面源码数据加载到该对象调用etree对象的xpath方法实现标签的定位环境安装pip install lxml实例化对象1.from lxml import etree2.加载本地html文件etree.parse(filepath)3.加载互联网上的数据源码文件etree.html(‘page_text’)4.xpath表达式进行标签定位...

2020-11-21 21:41:10 84

原创 scrapy学习02、项目创建

项目创建1、cmd中cd到工程目录下,terminal中运行指令创建工程: scrapy startproject myFistScrapyProiect2、在spiders中创建一个爬虫文件 cd spiders scrapy genspider spiderName www.xxx.com2、执行工程scrapy crawl spiderName对爬虫文件修改后使用上述指令执行工程(setting文件中需修改ROBOTSTXT_OBEY = 为False).

2020-11-18 22:07:29 59

原创 Scrapy学习 01、环境安装

-windows:pip install whellpip install C:\Users\Admin\Desktop\import\Twisted-20.3.0-cp37-cp37m-win_amd64.whl(地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted)pip install pywin32pip install scrapy备注:cp37表示支持python3.7,amd64表示使用64位系统...

2020-11-18 21:35:09 49

原创 selenium学习02

'''模拟登录QQ空间'''from selenium import webdriverfrom selenium.webdriver import ActionChainsfrom time import sleep#实例化浏览器对象bro = webdriver.Chrome(executable_path='./chromedriver.exe')#发起请求bro.get('https://qzone.qq.com/')#该界面会直接提示使用二维码登录,且元素存在与iframe中

2020-11-15 21:40:27 91

原创 selenium基本使用

'''selenium模块的基本使用1、便捷的获取网站中动态加载的数据2、便捷实现模拟登录---使用流程1、环境安装,pip install selenium2、下载浏览器的驱动程序3、实例化浏览器对象'''from selenium import webdriverfrom time import sleepbro = webdriver.Chrome(executable_path='./chromedriver.exe')#让浏览器发起一个请求bro.get('https

2020-11-15 21:25:38 79

原创 爬虫学习之bs4_02

''''''import requestsfrom bs4 import BeautifulSoupif __name__ == '__main__': headers = { 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.75 Safari/537.36' } #对主页面进行源码获

2020-11-01 14:01:33 66

原创 爬虫学习之bs4_01

from bs4 import BeautifulSoupimport lxmlif __name__ == '__main__': fp = open('./T9.html','r',encoding='utf-8') #实例化soup对象 soup = BeautifulSoup(fp,'lxml') print('---返回所有的源码数据---') #所有源码 print(soup) #返回源码对象中的第一个p标签,与方法soup.find

2020-11-01 14:00:38 98 1

原创 爬虫学习-爬取图片信息

import requestsimport reimport osif __name__ == '__main__': url = 'https://www.qiushibaike.com/imgrank/' #热图页url headers ={ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.424

2020-10-28 21:36:23 212

原创 pyton爬虫之request的POST方法

'''对化妆品生产许可信息管理系统相关数据爬取动态加载数据1.主页url并没有数据,而是通过HXR加载的数据,获取对应的post请求url,拿到爬取数据的所有的id2.获取详情页面的post请求url3数据获取'''import requestsimport jsonif __name__ == '__main__': #UA伪装 headers ={ 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x

2020-10-25 21:26:48 623

原创 爬虫学习之requests模块GET方法

使用流程1 指定url,使用抓包工具,查看想要获取数据的rul确认参数发起数据请求'''破解百度翻译思路:1.使用浏览器抓包工具,发线在输入字母时会有 XHR 动作(页面刷新),是一个POST 请求2.找到要抓取的url,并确认返回的数据类型content-type: application/json;发现是一个json的数据类型3.弄清楚json的数据结构'''import requestsimport jsonif __name__ == '__main__':

2020-10-25 21:22:36 298

原创 django + mysql基本用法

1、下载安装参考:https://blog.csdn.net/weidong_y/article/details/7976372、mysql的常用指令1)、mysql -uroot -p; #登录mysql,其中root为用户名2)、show databases; #显示已经存在的数据库3)、create database myweb_db charset=utf8; #创建数据库,myweb_db为数据库名称4)、use myweb_db;使用数据库,myweb_db

2020-08-15 12:21:27 107

原创 初学django04

1、新建模板文件一般在项目所在目录创建templates文件夹2、配置模板目录在项目的配置文件中的配置(setting.py文件)中设置模板文件目录3、创建模板文件一般在templates目录中为各个app新建文件夹方便管理与查找,然后新建html模板文件4、使用模板文件在应用的视图文件中使用模板文件5、模板传值在context上下文中传入参数,在模板文件中用{{key值}}来调用...

2020-08-10 22:31:39 79

原创 初学django 03

1、编写试图函数在app应用的views.py中编写视图函数from django.shortcuts import renderfrom django.http import HttpResponse# Create your views here.def index(request): return HttpResponse('AAA-BBB-CCC')2、url配置app目录下新建urls.py文件,并建立url地址和视图的对应关系from django.conf.urls

2020-08-09 22:10:20 68

原创 初学Django02

后台管理1、本地化修改setting文件,本地化语言和时区LANGUAGE_CODE = 'zh-hans' #修改语言为中文TIME_ZONE = 'Asia/Shanghai' #修改时间为上海时间2、创建管理员python manage.py createsuperuserUsername (leave blank to use 'admin'): adminEmail address: [email protected]:Password (again)

2020-08-09 21:30:39 98

原创 初学Django01

创建工程本例:python3.7+django1.8.2步骤1:进入本地虚拟环境,安装djangopip install django==1.8.2步骤2:创建工程python manage.py startproject + 工程名步骤3:创建app应用python manage.py startapp + 应用名称步骤4:注册应用在工程目录中的settin.py文件中的 INSTALLED_APPS中添加应用步骤5:查看是否可以运行成功cmd中运行python manag

2020-08-09 20:27:05 88

原创 python安装虚拟环境virtualenv

python安装虚拟环境virtualenv1、安装virtualenvpip install virtualenv2、安装virtualenvwrapper-win,win系统需要安装,否则会报错workon 非法命令等pip install virtualenvwrapper-win3、常用指令1.退出当前虚拟环境$deactivate2.列出虚拟环境列表$lsvirtualenv -benv1env23.切换虚拟环境$workon env24.进入当前虚拟环

2020-08-05 21:24:07 118

原创 pip 安装框架超时解决办法

pip 安装框架超时解决办法1、可以增加时间限定,将时间设置变长pip --default-timeout=100 install -U package2、替换电脑本地pip文件,c盘根目录pip.ini文件文件内容编辑如下内容,镜像地址可换,并将ini文件地址添加到环境变量[global]index-url = https://pypi.doubanio.com/simple/[install]trusted-host=pypi.doubanio.com3、2的临时解决方案pip in

2020-08-05 21:09:10 111

原创 python+matplotlib实现交互式图形显示

python+matplotlib实现交互式图形显示经典案例:实现通过左侧的三组按钮来设置正弦曲线的频率、颜色和线行,并根据新的设置来绘制曲线from random import choiceimport numpy as npimport matplotlib.pyplot as pltfrom matplotlib.widgets import RadioButtons,Buttont = np.arange(0.0,2.0,0.01)s0 = np.sin(2*np.pi*t)s1

2020-08-03 23:45:04 2825

原创 使用condition对象

使用condition对象'''使用condition对象可以在触发某些事件之后才处理数据或者执行特定的功能,可以用于不同线程之间的通信或者通知,以实现更高级别的同步案例:生产者与消费者共享一个列表,列表最大长度10,生产者负责在列表末尾添加元素,消费者负责获取首位元素并删除,如果达到最大长度,生产者等待,如果列表为空,则消费者等待'''import threadingfrom random import randintfrom time import sleep#自定义生产者类class

2020-08-02 21:52:30 321

原创 使用Lock和Rlock对象实现线程同步

使用Lock和Rlock对象实现线程同步import threadingimport timeimport randomclass myThread(threading.Thread): def __init__(self): super().__init__() #重写run方法 def run(self): global x #获取锁,如果成功则进入临界区 lock.acquire() x

2020-08-01 22:02:34 362 1

原创 python多线程

多线程初步了解#创建一个简单的线程t = threading.Timer(3,demo,args=(1,))t2 = threading.Timer(4,demo,args=(2,))#启动线程,3秒之后调用函数t.start()t2.start()time.sleep(7) #如果没有该指令,则不会打印,因为时间超过3秒,线程会被取消print(t.name) #线程的名称print(t.ident) #线程的标识符t.cancel()线程的join方法fr

2020-08-01 21:48:43 109

原创 面向对象编程

私有成员和公有成员1、_xxx 保护成员,不能用from 某的了import * 导入,只能类对象和类的子对象可以访问2、__xxx__ 系统定义的特殊成员3、__xxx 类的私有成员,一般只有类对象自己可以访问,子类也不能访问,但是对象外部可以通过 对象名._类名__xxx来访问class A(object): ''' 1、_xxx 保护成员,不能用from 某的了import * 导入,只能类对象和类的子对象可以访问 2、__xxx__ 系统定义的特殊成员 3、

2020-07-25 19:58:01 88

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除