- 博客(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
513
原创 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
429
原创 git远程仓库常用操作
环境安装没啥说的,挺简单的,百度一大堆验证环境是否安装成功任意位置,鼠标右键,是否会出现 Git Bash Here选项git本地仓库设置git config --global user.name “id”git config --global user.email “phone@xxx.com”本地仓库初始化git init码云新建仓库本地生成公钥ssh-keygen -t rsa -C “phone@xxx.com”备注:1、提示输入时,连续三次回车即..
2021-12-30 23:41:35
479
原创 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
107
原创 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
156
原创 Jmeter基本使用方法
工具下载链接:https://pan.baidu.com/s/1o4wbSkgW_RS3BSK8xLbxKg提取码:YYDS工具基本使用下载解压后,进入\apache-jmeter-3.3\bin 中双击jmeter.bat 既可(需要安装jdk环境)运行后画面(会有一个命令行窗口,请勿关闭)新建线程组添加请求填写请求信息添加监听器(查看接口响应等)执行如有报错 请勾选参数编码列正常返回结果(返回结果编码可自行处理)...
2021-10-11 20:05:04
6867
原创 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
65
原创 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
80
原创 pip批量安装三方库
1、新建txt文本,并每行写入需要安装的库的名称2、cmd 切到当前文件目录3、执行 pip install -r requests.txt
2020-12-23 20:50:05
210
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
117
原创 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
378
原创 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
526
原创 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
176
原创 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
120
原创 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
108
原创 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
90
原创 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
61
原创 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
51
原创 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
98
原创 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
88
原创 爬虫学习之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
76
原创 爬虫学习之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
104
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
220
原创 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
649
原创 爬虫学习之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
311
原创 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
114
原创 初学django04
1、新建模板文件一般在项目所在目录创建templates文件夹2、配置模板目录在项目的配置文件中的配置(setting.py文件)中设置模板文件目录3、创建模板文件一般在templates目录中为各个app新建文件夹方便管理与查找,然后新建html模板文件4、使用模板文件在应用的视图文件中使用模板文件5、模板传值在context上下文中传入参数,在模板文件中用{{key值}}来调用...
2020-08-10 22:31:39
86
原创 初学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
77
原创 初学Django02
后台管理1、本地化修改setting文件,本地化语言和时区LANGUAGE_CODE = 'zh-hans' #修改语言为中文TIME_ZONE = 'Asia/Shanghai' #修改时间为上海时间2、创建管理员python manage.py createsuperuserUsername (leave blank to use 'admin'): adminEmail address: 12345678@163.comPassword:Password (again)
2020-08-09 21:30:39
102
原创 初学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
98
原创 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
126
原创 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
122
原创 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
2919
原创 使用condition对象
使用condition对象'''使用condition对象可以在触发某些事件之后才处理数据或者执行特定的功能,可以用于不同线程之间的通信或者通知,以实现更高级别的同步案例:生产者与消费者共享一个列表,列表最大长度10,生产者负责在列表末尾添加元素,消费者负责获取首位元素并删除,如果达到最大长度,生产者等待,如果列表为空,则消费者等待'''import threadingfrom random import randintfrom time import sleep#自定义生产者类class
2020-08-02 21:52:30
330
原创 使用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
369
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
114
原创 面向对象编程
私有成员和公有成员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
98
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人