
Python
Life is short
you need Python
CtrlCV工程师
做一棵小草,奉献一片绿色,做一名开发者,分享一点经验。
展开
-
VSCode python autopep8 格式化 长度设置
给 autopep8 传递文件参数原创 2024-07-23 10:03:11 · 659 阅读 · 0 评论 -
python 实现支持多客户端的 Socket服务 Demo
# _*_ coding: utf-8 _*_"""Time: 2022/05/13 19:13Author: JyunVersion: V 0.1File: SocketDemo.pyBlog link: https://ctrlcv.blog.youkuaiyun.com/"""import socketfrom threading import Thread# 异步方法装饰器def async_way(func): def wrapper(*args, *原创 2022-05-13 19:14:38 · 559 阅读 · 0 评论 -
python 对象 与 base64 字符串 互转
# _*_ coding: utf-8 _*_"""Time: 2022/4/21 17:33Author: JyunVersion: V 0.1File: test.pyBlog: https://ctrlcv.blog.youkuaiyun.com"""# import cPickle as pickle # 基于C语言的pickle模块import datetimeimport pickleimport base64class Test: def原创 2022-04-21 18:06:50 · 1010 阅读 · 0 评论 -
调用wireshark接口(tshark.exe)抓包,实现深度自定义,使用python处理抓包数据
# _*_ coding: utf-8 _*_"""Time: 2022/4/14 11:13Author: JyunVersion: V 0.1File: demo.pyBlog: https://ctrlcv.blog.youkuaiyun.com"""import datetimeimport gzipimport jsonimport timeimport pysharkclass GetPacket: def __init__(self,原创 2022-04-14 11:38:40 · 3106 阅读 · 5 评论 -
CentOS Linux WARNING: pip is configured with locations that require TLS/SSL, however the ssl module
linux pip3 安装包时出现WARNING: pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.网上看了好多都说缺少openssl-devel包,需要重新编译安装python好麻烦。我偶然间发现 在执行pip3 install xxx的时候,在前面加上sudo也可以解决这个问题,在此记录一下。...原创 2022-03-22 16:47:32 · 7894 阅读 · 7 评论 -
python 微信v3支付接口 签名 Native支付
微信支付需要用到微信公众平台账号、微信商户账号。注册完成后,我们需要在平台找到 appid、mchid、证书等具体操作:微信支付接入前准备(Native支付)# _*_ coding: utf-8 _*_"""Time: 2022/2/28 14:33Author: JyunVersion: V 0.1File: wxpay.pyBlog: https://ctrlcv.blog.youkuaiyun.com"""import timeimport jsonimp原创 2022-03-01 14:39:07 · 1746 阅读 · 2 评论 -
pyinstaller No such file or directory: ‘C:\\Users\\xx\\AppData\\Local\\Temp\\_MEI
检查你的项目中是否使用了这段代码os.path.abspath(os.path.dirname(__file__))当你使用pyinstaller进行打包之后这段代码获取到的 将不是当前项目的目录;而是C:\\Users\\XXX\\AppData\\Local\\Temp\\_MEI0123\\目前还没有找到好的解决方案;我是通过改为相对路径解决的。...原创 2021-11-12 19:49:46 · 4115 阅读 · 0 评论 -
Chrome 95.X版本 解密Cookies文件
dome.py# -*- coding=utf-8 -*-import osimport sqlite3import decryptcookie_file = os.path.expanduser(os.path.join(os.environ['LOCALAPPDATA'], r'Google\Chrome\User Data\Default\Cookies'))def chrome_decrypt(encrypted_txt): if encrypted_txt[:4] ==原创 2021-11-05 17:25:20 · 1808 阅读 · 0 评论 -
Ajax 使用异步,逐一提交,等待返回
function submit($, path, dataList, successback = null, errorback = null) { /* * $:jQ * key:提交地址 * dataList:待提交数据列表 * successback:成功后的回调 * errorback:错误回调 * */ let data = dataList.shift() // 弹出第一个元素 if (!data) return $原创 2021-10-15 19:15:38 · 494 阅读 · 0 评论 -
python 读取excel、xls
安装xlrd模块pip install xlrdxlrd包使用起来本就十分友好,可以不必单独封装,这里只是为了展示和方便理解# _*_ coding: utf-8 _*_import xlrdclass Excel: def __init__(self, file_path, sheet=0): excel = xlrd.open_workbook(file_path) # 打开文件 self.table = excel.sheets()[sheet原创 2021-10-11 17:18:28 · 509 阅读 · 0 评论 -
安装suds报错ModuleNotFoundError: No module named ‘client‘解决方法
python3 安装 suds 时报错ModuleNotFoundError: No module named 'client'解决方法:pip install suds-py3原创 2021-09-17 13:16:19 · 888 阅读 · 0 评论 -
Python 模拟 POST 请求发送 application/x-www-form-urlencoded 类型的表单数据 / 含重复键
通过抓包工具可以看到 表单数据的提交类型为application/x-www-form-urlencoded ↓ ↓ ↓这种类型提交的数据就有可能会是这个样子的↓ ↓ ↓;含有重复的Key 不一样的值这种数据如果通过普通的requests.post(url=url, headers=headers, data={'k': 'v1', 'k': 'v2'})字典方式去发送数据肯定是不行的;这样的话字典只会保留第二个值,说不准还会报错。解决方案:from urllib import parse原创 2021-09-16 16:58:50 · 4556 阅读 · 0 评论 -
ImportError: Microsoft Visual C++ Redistributable for Visual Studio 2019 not installed on the machin
含有ddddocr模块的项目使用pyinstaller 打包后报错 ImportError: Microsoft Visual C++ Redistributable for Visual Studio 2019 not installed on the machine.解决方案:安装Microsoft Visual C++ Redistributable 2019Microsoft Visual C++ Redistributable 2019x86下载地址 Microsoft Visual C++原创 2021-09-06 20:37:28 · 7980 阅读 · 2 评论 -
Python 读取 Excel 示例
# _*_ coding: utf-8 _*_"""Time: 2021/8/16 15:24Author: WJY(YunYiJia)Version: V 0.1File: excel.pyDescribe: Blog link: https://blog.youkuaiyun.com/MeYungle"""import xlrdclass Excel: def __init__(self, path): self.excel = xlrd.open原创 2021-08-16 15:38:28 · 202 阅读 · 0 评论 -
记录 python 使用 tkinter 实现截屏翻译全过程
main.py# _*_ coding: utf-8 _*_"""Time: 2021/7/11 15:47Author: WJY(YunYiJia)Version: V 0.1File: main.pyDescribe: Blog link: https://blog.youkuaiyun.com/MeYungle"""from pynput.keyboard import Key, Listenerfrom view import ExampleAppclass原创 2021-07-14 17:56:25 · 529 阅读 · 0 评论 -
通过源码的方式安装pyinstaller3.6
通过pip install pyinstaller==3.6的方式死活装不上最后度娘说要通过源码的方式安装然后我就>>> venv\Scripts\python.exe E:PyInstaller-3.6\setup.py install结果又报错FileNotFoundError: [Errno 2] No such file or directory: 'README.rst'然后不行啊,之后又去找度娘,才知道要这么装# 先cd到PyInstaller-3.6的源码目录Py原创 2021-07-07 21:45:59 · 466 阅读 · 0 评论 -
python json.loads() 报错 json.decoder.JSONDecodeError: Invalid control character
当执行json.loads(response.text)或response.json()报错: json.decoder.JSONDecodeError: Invalid control character原因:在response.text的键值中有非法控制符号如\n\t解决方法:json.loads(response.text, strict=False)添加strict=False 参数 将字符串读取为dict字典结构...转载 2021-07-06 10:28:18 · 2147 阅读 · 2 评论 -
pyinstaller 打包后运行报错 No module named ‘pymssql._mssql‘ 解决方案之一
pyinstaller 打包后运行报错 No module named 'pymssql._mssql'亲测python37下pymssql2.1.4版本以上的都会报上面这个错,都是血的教训啊,栽坑最狠的一次。# 卸载pymssqlpip uninstall pymssql# 指定版本安装pip install pymssql==2.1.4...原创 2021-07-01 17:23:17 · 3917 阅读 · 3 评论 -
Crypto 安装
pip install pycryptodome -i https://pypi.tuna.tsinghua.edu.cn/simple原创 2021-06-29 10:17:37 · 703 阅读 · 1 评论 -
Python 获取Windows管理员权限
最近在写一个可以自动更换 hosts 的 python 脚本,但是操作 hosts 需要管理员权限 ,所以就想着要怎么获取。总结了一下,有三种方法可以获取,下面分别介绍一下。1. 以管理员运行 cmd这个方法很简单,也无需多说,右键以管理员运行就可以了,然后在里面运行 python 脚本就有管理员权限了。2. 用 cmd 脚本获取假设我要运行的文件是 test.py,则我可以写一个 cmd 脚本,不妨叫做 go.cmd,在里面写入:@echo off%1 mshta vbscript:Crea转载 2021-06-26 22:25:58 · 1131 阅读 · 0 评论 -
Python 获取windows 系统路由表 route print
import osimport redef get_sys_route(): sys_route_table = os.popen('route print') # 使用os.popen()获取程序输出 all_route_lines = sys_route_table.readlines() # 按行读取 start_inx, end_inx = [inx for inx, line in enumerate(all_route_lines) if line == '\原创 2021-06-26 19:29:15 · 1070 阅读 · 0 评论 -
layui模板引擎 (laytpl) 与Flask模板引擎 (jinja2)冲突的问题
前端解决方式一<!-- 使用 Jinja2 的 raw 标签声明原生代码块,也就是不需要进行后端渲染的代码块。使用 raw 和 endraw 标签把 JavaScript 模板部分标记出来即可 -->{% raw %}<script type="text/html" id="temp_status"> {{# if(d.Status == 1){ }} <span class="layui-badge layui-bg-orange">已启用<原创 2021-06-26 16:22:17 · 1321 阅读 · 0 评论 -
python mitmdump debug 调试脚本/不在控制台运行
编写一个run.py文件写入以下内容# _*_ coding: utf-8 _*_import sysimport osfrom mitmproxy.tools.main import mitmdumpsys.path.append(os.path.dirname(os.path.abspath(__file__)))print(os.path.dirname(os.path.abspath(__file__)))mitmdump(['-s', 'script.py'])之后就可以原创 2021-05-25 15:46:26 · 1740 阅读 · 2 评论 -
如何使用 Python 执行 js 代码?
为什么要引出Python执行js这个问题?都说术业有专攻,每个语言也都有自己的长处和短处。在爬虫方向,Python绝对是扛把子,近几年随着AI的火爆,需要各种各样的数据,所以,爬虫需求也跟着水涨船高起来。我们做爬虫的当然是爬的爽,但是估计人家后台在骂街,毕竟谁都不希望自己的数据被弄走,所以后台反爬技术也在快速提升,一攻一防就这么在拉锯着。现在为了防止反爬,前端使用的反爬技术比较多的是js代码混淆。什么是js代码混淆?正常代码我们现在看一段js代码,代码逻辑很简单,就是拼接时间返回。func转载 2021-05-24 11:19:57 · 342 阅读 · 0 评论 -
Python 获取所有被 property 装饰的属性
{name: self.__getattribute__(name) for name, obj in vars(ClassName).items() if isinstance(obj, property)}# return {"属性名称":"属性值"}原创 2021-05-17 14:09:58 · 662 阅读 · 0 评论 -
PyCharm HTML注释 方式修改
{# #} 修改为 <!-- -->文件>设置>语言和框架>目标语言 改为None即可原创 2021-05-13 13:59:18 · 337 阅读 · 0 评论 -
Python 解决 滑动验证码 Demo
我们可以借用opencv来解决这个问题,主要步骤:读取图片高斯模糊处理Canny边缘检测轮廓检测获取位置opencv 是什么?OpenCV(Open Source Computer Vision Library)是开放源代码计算机视觉库,主要算法涉及图像处理、计算机视觉和机器学习相关方法,可用于开发实时的图像处理、计算机视觉以及模式识别程序。安装pip install opencv-python代码import cv2 as cvimage_path = 'captcha原创 2021-05-07 11:43:09 · 208 阅读 · 1 评论 -
Win10 配置 允许SQLserver通过防火墙 / 允许 SQLServer 远程连接
打开"高级安全 Windows 防火墙"(Win+R 输入 WF.msc)在左边栏中,左键点击“入站规则”,然后在右边栏中单击“新建规则”。选择端口然后 下一步,选择“TCP”,然后在下面"特定本地端口"处输入SQLserver的端口号(默认1433)之后一路下一步,在最后页面输入名称(随意)点击完成。...原创 2021-05-06 17:32:25 · 6021 阅读 · 7 评论 -
Python 字典使用点(dict.key)方式取值 字典转对象
class Dict(dict): __setattr__ = dict.__setitem__ __getattr__ = dict.__getitem__ # dict.k ==> dict[k] # __getattr__ = dict.get # dict.k ==> dict.get(k) # __getattr__ = lambda d, k: d.get(k, '') # dict.k ==> dict.get(k,defau原创 2021-03-31 09:59:23 · 2271 阅读 · 0 评论 -
Python 上传 图片 文件 multipart/form-data 格式
import osimport requestsfrom requests_toolbelt import MultipartEncoderfrom uuid import uuid1def uploadimg(url, file_path): # 注意headers里面的boundary要和fields内的boundary相同 boundary = '----' + str(uuid1()) headers = { 'Content-Length': st原创 2021-03-30 18:02:59 · 785 阅读 · 0 评论 -
selenium匹配不到元素,容易被忽略的问题,iframe的操作
有可能元素或标签被iframe包裹着解决方法# 先切换到这个iframe再进行匹配browser.switch_to.frame('iframe_id')# 无id和name先定位iframe标签,再切换到iframeiframe = driver.find_elements_by_tag_name("iframe")[0]browser.switch_to.frame(iframe)# 之后正常匹配就可以了browser.find_element_by_id('cardid').sen原创 2021-02-20 14:35:50 · 304 阅读 · 0 评论 -
Python更换 pip 到国内 pip源
国内pip源# 清华大学https://pypi.tuna.tsinghua.edu.cn/simple/https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple/# 豆瓣源https://pypi.doubanio.com/simple/# 阿里源https://mirrors.aliyun.com/pypi/simple/临时使用pip install PackageName -i https://mirrors.aliyun.com/原创 2021-02-04 16:40:32 · 561 阅读 · 0 评论 -
Python 使用with管理数据库连接 MySQL/MSSQL/SQLite
MySQL和SQLServer、SQLite都大致相同import pymssqlMSSQL_AUTH = {'host': '127.0.0.1', 'user': 'sa', 'password': 'sa.123', 'database': 'DevDatabase'}MYSQL_AUTH = {'host': '127.0.0.1', 'user': 'root', 'password': 'Root.123', 'db': 'DevDatabase'}class MSSQL:原创 2021-01-30 14:25:06 · 398 阅读 · 1 评论 -
Python 生成16位唯一ID/UUID
# -*- coding:utf-8 -*-import timeclass UUID: def __init__(self, data_id=0): """ :param data_id: 自定义项目id """ self.data_id = data_id self.now = int(time.time()) self.UUID = 0 @staticmethod def原创 2021-01-17 23:06:36 · 3383 阅读 · 2 评论 -
python3实现CryptoJS AES加密算法
from Crypto.Cipher import AESfrom binascii import b2a_hex, a2b_heximport base64class AesCrypt: def __init__(self, __key): self.key = __key.encode('utf8') self.mode = AES.MODE_ECB # 模式可以更改为MODE_CBC需要添加vi待研究 # 生成加密器,参数密匙和模式原创 2020-12-25 14:27:50 · 1967 阅读 · 3 评论 -
python xpath匹配text()中含指定内容的方法
python xpath匹配text()中含指定内容的方法xpath方法:contains()方法名及参数作用contains()包含匹配/模糊匹配 <td>创建人:</td> <td class="td_left">刘某人</td> <td>创建机构:</td> <td class="td_left">某某机构</td># 定位td标签内原创 2020-12-22 14:15:27 · 7174 阅读 · 5 评论 -
python 腾讯云API 请求签名 实例(DNS)
# -*- coding: utf-8 -*-import requestsimport hashlibimport base64import randomimport timeimport hmacclass QcloudAPI: def __init__(self, params): self.params = params self.methed = 'POST' self.src = 'cns.api.qcloud.com/v原创 2020-11-09 21:47:34 · 1240 阅读 · 1 评论 -
python合并图片,给图片添加边框
from PIL import Imagedef blend_two_images2(img1, img2, tran=255): """ :param img1: 前景图 :param img2: 背景图 :param tran: 透明度 :return: - """ # 下层图片/背景 img1 = Image.open(im...转载 2019-09-26 09:38:17 · 2890 阅读 · 0 评论 -
WSS协议网页爬取(状态码101)
这里用AioWebSocket库做演示AioWebSocket是一个遵循 WebSocket 规范的 异步 WebSocket 客户端,相对于其他库它更轻、更快。Installationpip install aiowebsocketWSS和WS之间的关系就像HTTPS和HTTP一样。ws和wss现在它可以自动识别WS和WSSimport asyncioimport loggin...翻译 2019-07-17 10:31:01 · 5028 阅读 · 0 评论 -
正则表达式入门 语法 及教程(详细)
正则表达式一、动机文本处理已经能称为计算机常见工作之一对文本内容的搜索,定位,提取是逻辑比较复杂的为了快速方便的解决上述问题,产生了正则表达式二、简介定义:即文本的高级匹配模式,提供搜索,替换等功能。其本质是由一系列字符和特殊符号构成的字符串,这个字符串即正则表达式。原理:通过特殊符号去描述字符的组成规则,比如重复,位置等,来表达一类字符串,进而匹配。三、元字符的使用...原创 2019-07-07 09:24:44 · 424 阅读 · 1 评论