自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 收藏
  • 关注

原创 python pdf文件处理

fpdf简介fpdffpdf 的 github地址fpdf 是从 PHP 的 FPDF 移植而来的,与其他 PDF 库相比,fpdf 简单、小巧、用途广泛,功能先进,易于学习、扩展和维护。特征Python 2.5 到 3.4 支持Unicode (UTF-8) TrueType 字体子集嵌入条码 I2of5 和 code39,二维码即将推出…PNG、GIF 和 JPG 支持(包括透明度和 Alpha 通道)带有视觉设计师和基本 html2pdf 的模板异常支持、其他小修复、改进和 P

2022-06-03 17:30:08 1391 1

原创 Python 使用 getopt 自定义命令行参数

简介官方文档getopt 模块是一个命令行选项解析器。可以解析自定义选项使用# -*- encoding: utf-8 -*-# CreateTime: 2022/4/14 22:22# Author: @一碗烈酒import getoptimport sys"""官方文档:https://docs.python.org/zh-cn/3/library/getopt.html?highlight=getopt#module-getopt解析命令行参数opts, argument

2022-04-14 23:29:21 912

原创 python 生成二维码

方式一:qrcodepip install qrcodeimport qrcode"""qrcode : 二维码生成库 https://github.com/lincolnloop/python-qrcode"""def save_qrcode(text, pic_name, fill_color="black", back_color="white"): """ 二维码生成方法 :param text: :param pic_name: :p

2022-03-29 16:05:11 1105

原创 Mongodb 安装使用

Linux 安装、卸载点击这里进入官网下载安装入口# 使用yum安装 添加repo库地址vim /etc/yum.repos.d/mongodb-org-5.0.repo# 复制一下内容到文件内[mongodb-org-5.0]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/5.0/x86_64/gpgcheck=1enabled=1gpgkey=htt

2022-03-02 13:45:48 1568

原创 Python自动化测试中的参数化使用

ddt安装pip install ddt使用在测试类上添加装饰器 @ddt.ddt ;然后在测试方法(用例)上添加装饰器 @ddt.data(args);还可以使用 @ddt.unpack 对传入的参数进行解包.from ddt import data, ddt, unpackimport unittestimport inspectimport os import sys@ddt # 首先装饰类class TestOneClass(unittest.TestCase):

2022-02-25 15:39:05 2440

原创 apollo配置 Python pyapollo 使用

github:https://github.com/filamoon/pyapollo安装:# 注意注意注意:这个库使用时会报链接超时,所以不要使用了$ git clone https://github.com/filamoon/pyapollo$ cd pyapollo$ python setup.py install这里是一个别人修改后的库, github传送门,直接复制这个代码创建一个类使用就好了。#! /usr/bin/env python3#-*- coding:utf-8 -*

2022-02-22 18:11:20 3443

原创 python 自动化测试中 全局变量设置和引用

Tips: 使用类属性的定义和获取来作为全局变量的设置和读取,好处是不需要再创建文件,维护数据库等相对来说简便一些(个人觉得)。第一步:创建一个类,用类属性的 setattr() 和 getattribute() 方法 来定义和获取类属性。# utils.variable_util.pyclass Varaible: """ globale varaible class. you can set a global variables for your project. and

2022-02-22 13:08:47 1313

原创 selenium.common.exceptions.WebDriverException: Message: unknown command: Cannot call non W3C standar

在使用 Selenium 操作 Web 浏览器 按钮滑动时 报错:selenium.common.exceptions.WebDriverException: Message: unknown command: Cannot call non W3C standard command while in W3C mode解决方法:在创建 driver 对象时,添加浏览器的 option 选项 关闭 w3c 模式from selenium import webdriverimport time

2022-02-07 18:09:13 1656

原创 TypeError: object supporting the buffer API required

pycharm 使用 Pymysql 链接数据库报错 TypeError: object supporting the buffer API required原因:是因为 password 需要 str 格式字符串 而我写成了int类型

2022-02-07 18:06:20 3625 1

原创 Python 使用Click自定义命令行参数

安装:pip install click使用:@click.command()@click.option("--num", default=1, prompt="input run nums:", help="print times")@click.option("--name", default="None", prompt="input your name:", help="name")def demos(num, name): for i in range(num):

2021-11-20 12:33:21 3583 1

原创 nmap — 网络探测工具和安全/端口扫描器

简介:Nmap(“网络映射器”)是一个免费的开源(许可) 用于网络发现和安全审计的实用程序。许多系统和网络管理员还发现它对于网络库存、管理服务升级计划以及监控主机或服务正常运行时间等任务很有用。Nmap 以新颖的方式使用原始 IP 数据包来确定网络上可用的主机、这些主机提供的服务(应用程序名称和版本)、它们运行的​​操作系统(和操作系统版本)、数据包过滤器/防火墙的类型正在使用中,以及其他数十种特性。它旨在快速扫描大型网络,但对单个主机也能正常工作。Nmap 运行在所有主要的计算机操作系统上,官方二进制

2021-11-20 12:32:50 887

原创 Python http.server 静态文件服务器

Python3 内置模块帮助信息> python -m http.server --helpusage: server.py [-h] [--cgi] [--bind ADDRESS] [--directory DIRECTORY] [port]positional arguments: port 指定访问端口,默认 8000optional arguments: -h, --help 显示帮助信息并退出

2021-11-20 12:14:42 2008

原创 Windows 安装配置java环境jdk

目录下载:安装:配置:测试:下载:官网下载地址:Java Downloads | Oracle(建议下载java8 因为后面好多其他工具不支持高版本)安装:双击exe文件指定目录安装配置:JAVA_HOME: D:\softinstalllocation\Java CLASS_PATH : .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;PATH: %JAVA_HOME\bin ...

2021-11-04 13:05:07 290

原创 Jenkins + Ant 执行 Jmeter脚本

目录前提-环境依赖:配置Jmeter build.xml:Jnekins 持续构建前提-环境依赖:安装jdk: Linux 安装配置Java环境JDK安装jmeter:Jmeter 安装配置安装ant:我使用的是 yum install -y ant 安装目录在 usr/share/ant安装jenkins:jenkins安装使用配置Jmeter build.xml:将 jmeter/extras 目录下的 ant-jmeter-1.1.1.jar 复制...

2021-11-04 12:55:03 845 1

原创 Docker 安装mysql 使用Navicate访问

安装docker# 使用yum安装yum install -y docker# 查看是否安装成功 版本号docker --version# 配置国内镜像源vim /etc/docker/daemon.json# 将以下内容写入,保存{ "registry-mirrors": ["http://hub-mirror.c.163.com"] }使用docker安装mysql镜像# 先查询 mysql镜像信息docker search mysql# 下载最新版本的my

2021-10-25 15:56:47 379

原创 Jmeter服务器模式 分布式模式 远程启动执行

需要条件:本地和服务器都需要安装Jmeter 本地和服务器安装的Jmeter必须版本一致 本地和服务器安装的JAVA版本必须一致 本地和服务器安装Jmeter后 都需要配置环境变量 系统防火墙已关闭或者开启指定端口 配置:本地配置:服务器配置:启动方式:结果回传:报告生成:...

2021-10-25 13:57:55 1277

原创 Android Studio 查看APP日志 性能监控 解析AndroidMainfest.xml

下载安装官方下载地址下载安装后,打开任意一个安卓项目提前配置java环境jdk。 在 studio 内配置android-sdk路径然后选择升级gradle studio会有提示,根据步骤来就行性能监控Tips: 需要app开启debug模式 找开发打开即可根据以下操作步骤选择对应链接的手机,并且手机上启动APP此时进行app操作即可查看以下信息在页面内点击任意一个位置 进入到具体信息页面日志查看Tips: 需要...

2021-10-20 16:13:26 1554

转载 Python 打包工具 pyinstaller

介绍官网PyInstaller将 Python 应用程序及其所有依赖项捆绑到一个包中。用户无需安装 Python 解释器或任何模块即可运行打包的应用程序。PyInstaller支持 Python 3.6 或更新版本PyInstaller 完全兼容 Windows、Mac OS X 和 GNU/Linux 。并且使用都是一致的。安装pyinstaller 在各平台安装方式是一样的pip install pyinstaller使用使用 pyinstaller 打包后 会在.

2021-10-15 18:02:23 6746 1

原创 Jmeter 安装配置

windwoslinux解压后

2021-10-14 13:53:10 147

原创 Android APK文件反编译 查看appid等信息

依赖工具dex-tools:将 apk文件内的classes.dex 编译成 .jar 文件 jd-gui: jar包反编译工具步骤将 apk 文件后缀名改为 .zip 压缩文件格式 将改名候的压缩文件解压,解压后文件夹内找到classes.dex 文件 下载工具 dex-tools 解压工具后 进入工具目录 将classes.dex 文件复制到此目录下,使用命令:d2j-dex2jar.bat classes.dex 此时在目录中会生成classes-dex2jar.jar 文件 ...

2021-10-14 13:30:46 3657

转载 安卓版本 version 和api对照表

Name Internal codename Version number(s) Initial stable release date API level Android 1.0 N/A 1.0 September 23, 2008 1 Android 1.1 ...

2021-10-14 13:29:01 647

原创 Python 进程 multiprocess

访问官网进程介绍:每启动一个进程都是占用独立的内存空间的;每个进程内的数据是独立的;"""简单入门"""import timeimport osfrom multiprocessing import Processdef demo_one(): print("start") time.sleep(10) print(os.getpid(), os.getppid()) # 子进程和父进程的pid print("end")if __na

2021-10-12 11:09:36 4069 1

转载 app安全测试工具

Android App漏洞检测1 国内Android App在线漏洞检测平台腾讯金刚审计系统 http://service.security.tencent.com/kingkong 免费 无限制腾讯御安全 http://yaq.qq.com/ 免费 查看漏洞详情需认证阿里聚安全 http://jaq.alibaba.com/ 免费 查看漏洞详情需认证360显微镜 http://appscan.360.cn/ 免费 无限制360APP漏洞扫描 http://dev.360.cn/html..

2021-10-12 10:48:34 2065

原创 python 虚拟环境

python 虚拟环境

2021-10-12 10:34:48 620

原创 Win10 安装 Mysql

官网下载地址解压下载好的mysql压缩包,我的解压路径:D:\soft_install\mysql-8.0.25-winx64进入到mysql文件路径下 创建my.txt文件 将以下内容复制保存。然后将文件名修改为 my.ini需要修改 basedir 和 datadir 路径[mysqld]# 设置3306端口port=3306# 设置mysql的安装目录basedir=C:\\Program Files\MySQL\mysql-8.0.21-winx64# 设置mysql数据

2021-09-30 17:40:08 65

原创 Linux 时间同步

datedate 命令介绍date -s "2021-09-17 12:00:00"ntpdatentpdate命令介绍:手动执行:ntpdate -u ntp.api.bz定时执行:crontab -e1 * * * * ntpdate ntp.api.bz

2021-09-27 10:08:43 112

原创 windows tasklist taskkill netstat start 进程管理

tasklist查看帮助:tasklist /?参数列表: /S system 指定连接到的远程系统。 /U [domain\]user 指定应该在哪个用户上下文执行这个命令。 /P [password] 为提供的用户上下文指定密码。如果省略,则 提示输入。 /M [module] 列出当前使用所给 exe/dll 名称的所有

2021-09-12 00:44:32 410

原创 adb wifi 链接手机 调试

前置条件:1、手机和电脑同属于一个局域网内;2,手机打开开发者模式;3、华为手机打开“仅充电模式时允许usb调试”;(实在不行华为手机就用usb吧)操作步骤:先用usb连接线链接电脑和手机;# cmdadb devices # 查看手机是否链接成功adb tcpip 5555 # 开启链接端口adb connect ip:5555 # 通过上一步开启的端口 和手机的WiFi IP地址进行链接adb devices # 此时会显示WiFi和usb链接的两条信息拔

2021-09-11 17:58:29 227

原创 Python 异步 等待

import asyncioimport timeasync def eternity(): # Sleep for one hour await asyncio.sleep(3600) print('yay!')async def main(): # Wait for at most 1 second try: await asyncio.wait_for(eternity(), timeout=1.0) except asy.

2021-09-08 17:56:43 531

原创 python 异步 请求接口

import asyncioimport aiohttpimport timeasync def fetch(session, url): print("发送请求", url) async with session.get(url, verify_ssl=False) as response: content = await response.content.read() with open(file=str(time.time()) + ".jp.

2021-09-08 17:56:05 1457

原创 Python 异步 helloworld

"""异步 协程遇到IO等待的情况,切换到其他任务。在同一个线程下运行同步:一个一个执行异步:通过协程运行又叫异步"""import asyncioasync def func1(): print(1) await asyncio.sleep(1) print(2)async def func2(): print(3) await asyncio.sleep(1) print(4)tasks = [ asyncio.e.

2021-09-08 17:54:55 60

原创 Python 进程 消息JoinableQueue

"""JoinableQueue 消息类必须在消息队列内的任务被消费(get)时,使用 task_down() 方法 发送被消费信号"""from multiprocessing import Process, JoinableQueueimport timeimport osdef inputQ(queue, name): """加入队列""" queue.put(name + str(os.getpid()) + " -- " + str(time.time())) .

2021-09-08 17:53:19 314

原创 Python 进程 manager进程管理器

"""使用Manager进程管理器 进行进程间的数据共享支持类型 list, dict, Namespace, Lock, RLock, Semaphore, BoundedSemaphore, Condition, Event, Barrier, Queue, Value, Array"""from multiprocessing import Process, Manager, Lockdef work(loc, data): with loc: data['co.

2021-09-08 17:52:38 904

原创 Python 进程池 回调函数

"""进程池 回调函数 回调函数会把任务函数的结果作为参数执行"""from multiprocessing import Poolimport timeimport osdef work(): time.sleep(1) print("%d 进程 work" % os.getpid()) return time.time()def call(res): # time.sleep(1) print("处理回调结果:{}".format(str(re.

2021-09-08 17:52:00 478

原创 Python 进程 进程池 非阻塞

"""多进程使用消息队列 将任务放入/取出队列时不等待,但队列已满/为空时,会报错,所以要使用try: finnaly"""import multiprocessingfrom multiprocessing import Process, Queueimport timeimport osdef inputQ(queue): """加入队列""" # queue.put(str(os.getpid()) + " -- " + str(time.time())) # 当队列.

2021-09-08 17:51:11 296

原创 Python 进程 进程池 阻塞

"""进程池Pool.apply() 同步任务方法"""import osimport timefrom multiprocessing import Pooldef work(n): print('%s run' % os.getpid()) time.sleep(1) return n ** 2if __name__ == '__main__': p = Pool(3) # 进程池中从无到有创建三个进程,以后一直是这三个进程在执行任务 res.

2021-09-08 17:50:21 449

原创 Python 进程 守护进程

from multiprocessing import Processimport timedef demo_one(): print("start") time.sleep(3) print("end")if __name__ == '__main__': p = Process(target=demo_one) p.daemon = True # 在start之前设置守护进程,子进程会在主进程结束后直接结束,无论子进程是否执行完 p.st.

2021-09-08 17:49:34 347

原创 Python 进程锁

"""每一个进程都有自己独立的空间,多进程操作同一块数据时,必须加锁处理,否则会导致数据错误加锁会把程序变成串行,效率变低"""from multiprocessing import Process, Lockimport timeimport osdef demo_one(): """查票""" with open("data.txt", "r") as f: num = int(f.read()) return numdef demo_t.

2021-09-08 17:48:59 240

原创 Python 进程 消息队列Queue

from multiprocessing import Process, Queuemax = 3q = Queue(maxsize=max)print(q.empty()) # 队列是否为空print(q.full()) # 队列书否已满peple = ["a", 'b', 'c', 'd', 'e', 'f', 'g']for i in peple: if q.full(): print("队列已满") data = q.get() #...

2021-09-08 17:48:20 625

原创 Python 进程 自定义进程子类 继承

"""自定义进程子类"""from multiprocessing import Process, current_processimport timeclass MyProceee(Process): def __init__(self): super().__init__() def run(self): print("必须重写进程类的run方法") print("调用start方法时,会执行这个重写的run方法") .

2021-09-08 17:46:33 232

空空如也

空空如也

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

TA关注的人

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