
python编程
JohelLiang
信息安全技术爱好者
展开
-
【script】python 解析 Windows日志(python-evtx)
Windows日志 模块安装pip install python-evtxWindows日志 解析源码源码import mmapimport contextlibfrom Evtx.Evtx import FileHeaderfrom Evtx.Views import evtx_file_xml_viewfrom xml.dom import minidomdef log_get(evtxpath): with open(evtxpath, 'r') as f:原创 2022-02-13 23:00:13 · 4492 阅读 · 17 评论 -
【script】数据处理的瑞士军刀 pandas
一、Pandas介绍在Python中, pandas 包含了高级的数据结构 Series 和 DataFrame ,使得在Python中处理数据变得非常方便、快速和简单。pandas 不同的版本之间存在一些不兼容性,为此,我们需要清楚使用的是哪一个版本的 pandas 。import pandas as pdprint(pd.__version__)1.3.1pandas 主要的两个数据结构是 Series 和 DataFrame ,我们先导入它们以及相关模块:import numpy a原创 2021-09-06 03:49:11 · 435 阅读 · 0 评论 -
【script】15行Python代码实现免费发送手机短信推送消息功能(twilio)
实现的功能通过代码定时给手机推送短信,短信内容可以自定义文字,当然你也可以去别的网站爬取每日心灵鸡汤,天气预报或其它信息进行推送。本文主要讲如何实现发送短信的功能,全部代码只用15行。首先贴出实现的效果图,后面再分两步详细描述实现过程,第一步免费注册api接口,第二步只需要写10来行代码。代码运行后本地收到返回的执行情况:手机收到代码发送过来的短信截图:实现过程获取短信api接口我们需要API的三个参数:account_sid ,auth_token 和Active number。注册原创 2021-08-25 12:00:17 · 1833 阅读 · 2 评论 -
【script】python requests模块中cookie的使用
获取 cookie 并使用获取 cookieimport requests# 访问对象为百度url = 'https://www.baidu.com'# 代理信息headers = {"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0"}# 请求目标res = requests.get(url, headers=headers)# 获得 cookie 对象原创 2021-05-31 17:08:14 · 276 阅读 · 0 评论 -
【script】python 调用阿里云解析 DNS API 实现 DDNS(动态域名解析)
一、前情提要 由于当前IPv4公网地址匮乏 ,一般来说,即便你是电信或联通的宽带,运营商默认也是不会给你分配公网 IP 的,需要向运营商提出申请,根据地区不同,申请难易程度不同。少数地区可以通过公众号或装维师父直接联系申请,大部分地区需要拨打人工客服(电信 10000,联通 10010)以“家中要安装家庭网络摄像头”为理由申请动态公网 IP(千万不能说是服务器或其他设备),少数地区可能一次无法申请成功(很多客服不清楚动态公网 IP,所以可以尝试多换几个客服),申请成功后重启光猫即可。不过运营商提供的公网转载 2021-05-08 10:47:16 · 2591 阅读 · 0 评论 -
【script】python 使用json模块实现字符串与字典的相互转换
使用 json 模块字符串转字典import jsons = '{"name": "Johel Liang", "Sex": "Man"}'d = json.loads(s)print(d, ',', d['name'])# {'name': 'Johel Liang', 'Sex': 'Man'} , Johel Liang字典转字符串import jsond = {'name': 'Johel Liang', 'Sex': 'Man'}s = json.dumps(d)print原创 2021-04-16 11:05:36 · 271 阅读 · 0 评论 -
【debug】UnboundLocalError local variable a referenced before assignment
1)下面这种情况是不会报错的:>>> x = 10>>> def bar():... print(x)>>> bar()10(2)但是这种情况就会报UnboundLocalError的错误:>>> x = 10>>> def foo():... print(x)... x += 1该代码会提示UnboundLocalError: local variable ‘x’ r转载 2021-04-13 20:00:17 · 379 阅读 · 0 评论 -
【script】python 中文汉字与url的转换
punycode 编码(推荐)punycode 编码又称 域名代码,是实现 中文汉字转英文字母 的一种编码方式中文汉字 转 urlimport reurl = 'www.示例.com'cn = re.findall('[\u4e00-\u9fa5]+', url)[0]puny = 'xn--' + cn.encode('punycode').decode('utf-8')url = url[:url.find(cn[0])] + puny + url[url.find(cn[-1]) +原创 2021-03-24 23:18:57 · 2613 阅读 · 2 评论 -
【script】python使用cx_Oracle模块访问Oracle
python访问oracle基础代码'''cx_Oracle需与python版本一一对应cx_Oracle下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#cx_oracle'''import cx_Oracle #导入oracle数据库的包class ORACLE: def __init__(self, user, pwd, host, port, service): self.user = user原创 2021-03-19 23:13:28 · 176 阅读 · 0 评论 -
【script】python使用pymssql模块访问SQL Server(Mssql)
import pymssql #导入sql server数据库的包class MSSQL: def __init__(self,host,user,pwd,db): self.host = host self.user = user self.pwd = pwd self.db = db def __GetConnect(self): ''' 连接数据库 '原创 2021-03-19 23:00:40 · 240 阅读 · 0 评论 -
【script】python3使用http.server搭建简易web服务
'''更详细的web服务搭建可参考django:https://docs.djangoproject.com/zh-hans/2.1/intro/tutorial01/'''from http.server import HTTPServer, BaseHTTPRequestHandlerimport jsonclass Resquest(BaseHTTPRequestHandler): def do_GET(self): ''' 处理get请求 ''' # 打印请求方法原创 2021-03-10 10:52:15 · 164 阅读 · 0 评论 -
【debug】requests.exceptions.ChunkedEncodingError: (‘Connection broken: IncompleteRead(0 bytes read)‘
问题描述在对 CVE-2020-14750 进行复现时,运行的 python 脚本报错如下:requests.exceptions.ChunkedEncodingError: (‘Connection broken: IncompleteRead(0 bytes read)’, IncompleteRead(0 bytes read))猜测原因为 post 数据中的 handle 参数与 java 相关,可能某个地方编码特殊解决方法可将 http 协议改成 1.0 版本,兼容该编码,相关代码如下原创 2021-03-06 18:52:18 · 2476 阅读 · 0 评论 -
【script】python多线程模块threading的使用
import threading, timedef fun(n): ''' 测试函数,使每条线程沉睡5秒 ''' with semaphore: print(n) time.sleep(5)def split_list_average(l, n): ''' 将列表 l 均分成大小为 n 的若干个列表 ''' for a in range(0, len(l), n): yield(l[a:a原创 2020-08-27 14:49:33 · 173 阅读 · 0 评论 -
【script】python调用剪切板
仅windows:import win32clipboard, win32con# 剪切板输出def getclipboard(): win32clipboard.OpenClipboard() text = win32clipboard.GetClipboardData(win32con.CF_UNICODETEXT) win32clipboard.Close...原创 2020-01-29 00:15:19 · 513 阅读 · 0 评论 -
【script】python中的函数式编程
函数式编程就是一种抽象程度很高的编程范式,纯粹的函数式编程语言编写的函数没有变量,因此,任意一个函数,只要输入是确定的,输出就是确定的,这种纯函数我们称之为没有副作用。而允许使用变量的程序设计语言,由于函数内部的变量状态不确定,同样的输入,可能得到不同的输出,因此,这种函数是有副作用的。函数式编程的一个特点就是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数!下面介绍一下函数式编...原创 2020-01-22 16:22:49 · 286 阅读 · 0 评论 -
【script】lambda的使用
一、lambda语法:lambdaargument_list: expressionargument_list是参数列表,它的结构与Python中函数(function)的参数列表是一样的(输入)expression是一个关于参数的表达式。表达式中出现的参数需要在argument_list中有定义,并且表达式只能是单行的(输出)lambda函数:又称“匿名函数” lambda...原创 2020-01-20 17:53:32 · 208 阅读 · 0 评论 -
【script】python识别pdf文档
from pdfminer.pdfparser import PDFParserfrom pdfminer.pdfdocument import PDFDocumentfrom pdfminer.pdfpage import PDFPagefrom pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreterfrom p...原创 2020-01-04 14:51:36 · 287 阅读 · 0 评论 -
【srcipt】python运行cmd命令
方法一:os.popen()import osresult = os.popen('curl https://ip.cn')print(result.read())这种方法比较常见,但是在windows环境下可能会出现如下报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 76: illega...原创 2020-01-04 00:51:02 · 379 阅读 · 0 评论 -
【script】python自定义时间格式的几种情况
格式一(中式)结果:2020-01-03 22:11:22import timenowtime = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())print(nowtime)格式二(英式)结果:Fri Jan 03 22:14:46 2020import timenowtime = time.strfti...原创 2020-01-03 22:01:27 · 1247 阅读 · 0 评论 -
【script】python字符串相似度匹配
import difflibstr1 = "a2b3c5"str2 = "abc"similarity = difflib.SequenceMatcher(None, str1, str2).quick_ratio()print(similarity) # 0.6666666666666666原创 2020-01-02 02:39:13 · 854 阅读 · 0 评论 -
【script】python3中的docx、win32com和openpyxl模块
docx模块:对word文档的处理读取docx文件from docx import Document # word处理模块path = r"C:\Users\30797\Desktop\python\docx.docx"document = Document(path) # 读取docx文件处理段落(paragraphs)1、遍历输出段落paragraphs ...原创 2020-01-01 21:41:15 · 971 阅读 · 0 评论 -
【debug】moduleNotFoundError:No module named 'exceptions'
前述:在cmd中使用 pip3 install docx 安装模块 docx 后,发现不能正常使用,并报错moduleNotFoundError:No module named 'exceptions'解决方法如下:1、卸载原来安装的docxpip uninstall docx2、安装 python-docx 模块即可pip install python-doc...原创 2019-12-31 16:01:14 · 16078 阅读 · 7 评论 -
【debug】python3安装win32com模块
python3 -m pip install pypiwin32原创 2019-12-31 15:42:26 · 1417 阅读 · 0 评论 -
【script】python通过字符串调用方法
目的描述:在以下代码中,通过调用aaa.bbb() 可以输出 bbb ,通过调用 ccc() 可以输出 cccclass aaa: def bbb(): print('bbb')def ccc(): print('ccc')str1 = 'aaa'str2 = 'bbb'str3 = 'ccc'aaa.bbb() # bbbccc(...原创 2019-12-11 03:25:17 · 278 阅读 · 0 评论 -
【debug】python打包成exe,太大了该怎么解决?
事情经过上周接了个需求,写了个小工具给客户,他要求打包成exe文件,这当然不是什么难事。因为除了写Python的,绝大多数人电脑里都没有Python编译器,所以打包成exe,让用户(windows)双击就可以打开,也算是必备技能了。直接用Pyinstaller,打开cmd:pyinstaller -Fw E:\test\url_crawler.py(-F 是打包成一个文件,-w是不出现调...原创 2019-12-10 19:39:29 · 1607 阅读 · 0 评论 -
【debug】UnicodeDecodeError: codec can't decode byte 0xbd in position 4: invalid start byte
问题描述:python内置编码方式为unicode编码,当读取一个非unicode编码文本时,python将报错,如:情况一:当文本为utf-8编码,直接读取将报错:UnicodeDecodeError: 'utf-8' codec can't decode byte 0xbd in position 4: invalid start byteTraceback (mos...原创 2019-11-10 03:35:06 · 857 阅读 · 0 评论 -
【debug】json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
摘要环境:编程语言:Python 3.7 操作系统:Win 10 json数据对象:https://kyfw.12306.cn/otn/leftTicket/query?leftTicketDTO.train_date=2019-11-03&leftTicketDTO.from_station=GZQ&leftTicketDTO.to_station=SZQ&p...原创 2019-10-30 11:46:52 · 63921 阅读 · 7 评论 -
【debug】写应用程序时遇到的桌面图标、运行图标、背景图片问题
摘要记一次写程序时遇到的跟图片有关的编程。用python写程序时,跟图片有关的地方大致有以下三个:桌面图标 运行图标 背景图片所需模块说明from io import BytesIO from PIL import Image as Imagep from PIL.ImageQt import ImageQt import base64运行图标、背景图片编程运行图...原创 2019-12-31 10:10:50 · 545 阅读 · 0 评论 -
【debug】使用lambda在循环中传参时,参数总为同一个值
发现问题:当我使用PyQt5在写一个文本处理小工具时,需要在调用事件时传入参数,于是想到了lambda函数,代码如下:def radiotext(self): '''文档输出格式选择功能''' # 自动生成按钮并命名。其中count_button为存储按钮名称的列表,list_new为存储按钮显示文本的列表 for count, ele_new in zip(co...原创 2019-09-06 15:29:29 · 906 阅读 · 1 评论 -
【script】python实现多线程将doc、docx转pdf,doc转docx
摘要本文讲述通过python实现将当前目录下的 .doc文档转.pdf、.docx文档转.pdf,以及.doc文档转.docx(在python中,如需对word文档进行读写,只能读写docx格式的word文档)。其中涉及到的知识点有如下几点:通过win32com模块对office文档进行格式转化多线程的应用及控制模块说明threading:线程应用模块pythoncom:处理w...原创 2019-07-31 16:13:42 · 2156 阅读 · 4 评论