正则表达式
用字符和特殊字符之间的组合来筛选字符串,
- 字符组
[] 一次匹配一个字符串,[]内的字符是或的关系 - 元字符
. 除了换行的所有字符
\w 字母数字下划线
\d 数字
^ 以什么开头
$ 以什么结尾
\ 转义符
| 或
() 组
[xy] 匹配x或y
[^xy] 匹配除了x和y的其他字符 - 量词
* 重复0次或多次
+ 重复一次或多次
? 重复0次或一次
{n} 重复n次
{n,} 重复n次或多次
{n,m} 重复n次到m次 - 贪婪匹配和非贪婪匹配
贪婪匹配:尽可能的多匹配
非贪婪匹配:尽可能的少匹配
如果有量词修饰,默认都是贪婪匹配,在量词的后边加上?,则变成非贪婪匹配。
re模块
如果要在python中使用正则表达式,re模块是选择之一
re的方法有
- findall 返回所有匹配成功的字符串
- finditer 返回一个迭代器对象
- search 返回第一个符合的字符串
- match 从第一个字符开始匹配 如果第一个不匹配直接结束
- compile 把正则表达式赋值给一个变量名
- 分组 ()
- 别名 ?P<名字>
第三方模块下载
pip install 模块名==版本号 -i 仓库源
requests模块
res = requests.get(url) 返回该网址内容
res.text() 返回文本
res.content() 返回整个页面
openpyxl模块
from openpyxl import Workbook
wb = Workbook() 创建一个excel文件
ws = wb.create_sheet() 创建一个工作簿
ws.title() 修改工作簿名
ws.cell(row= , column= , value=) 修改值
wb.save() 保存至excel文件
读取数据
from openpyxl import load_workbook
wb = load_workbook() 获得excel文件
wb.sheetnames 获得工作簿名
ws = wb[‘工作簿名’] 可操作工作簿
for i in ws.rows(): 循环打印工作簿的行
for i in ws.columns(): 循环打印工作簿的列
pandas模块
将字典格式数据写入excel文件中
res = pandas.DataFrame(dict)
res.to_excel()
random模块
random() 返回一个0-1的随机数
randint() 返回一个范围内的随机整数
choice() 随机选择一个数据值
sample() 可以自定义返回几个数据
shuffe() 洗牌
hashlib模块
import hashlib
md5 = hashlib.md5()
md5.append(‘加密字符串’)
md5.hexdigest() 查看加密后内容
supprocess模块
import supprocess
res = supprocess(‘命令’, sheel = True, stdout = supprocess.PIPE)
res.stdout.read().decode(‘gbk’)
logging模块
定义日志配置字典
import logging
import logging.config
logging.config.dictConfig(日志配置字典)
logger = logging.getLogger(‘日志说明’)
logger.debug()
logger.info()
logger.warning()
logger.error()
logger.critical()