一、openpyxl模块
openpyxl
是一个用于读取和写入 Excel 2010 xlsx/xlsm/xltx/xltm 文件的 Python 库。
它允许你以编程方式操作 Excel 文件,包括创建新的工作簿、修改现有的工作簿、添加或删除工作表、读写单元格数据等。
1-1、安装openpyxl模块
验证:
1-2、openpyxl模块的常用函数
1-3、示例
1-3-1、将数据保存到excel文件中
将上一节的requests模块爬取天气信息的代码封装成函数:
import requests
import re
# http请求
def get_html(url):
response = requests.get(url)
# 设置编码格式
response.encoding = 'utf-8'
return response.text
# 处理http请求的返回结果
def parse_html(html_str):
# 正则表达式模式
city_pattern = r'<span class="name"><a\s+[^>]*>(.*?)<\/a>'
weather_pattern = r'<span class="weather"><a[^>]*>(.*?)</a></span>'
wd_pattern = r'<li>.*?<span class="wd">(.*?)</span>.*?</li>'
# <span class="zs">适宜</span>
zs_pattern = r'<li>.*?<span class="zs">(.*?)</span>.*?</li>'
# 搜索匹配项
citys = re.findall(city_pattern, html_str)
weathers = re.findall(weather_pattern, html_str)
wds = re.findall(wd_pattern, html_str)
zss = re.findall(zs_pattern, html_str)
lst = []
for a, b, c, d in zip(citys, weathers, wds, zss):
lst.append([a, b, c, d])
return lst
将提取到的数据存储到excel中:
1-3-2、从excel文件中读取数据
import openpyxl
# 打开工作簿
workbook = openpyxl.load_workbook('景区天气.xlsx')
# 选择要操作的工作表
sheet = workbook['景区天气']
#读取表中的内容
lst = []
for row in sheet.rows:
sublst = []
for cell in row:
sublst.append(cell.value)
lst.append(sublst)
for item in lst:
print(item)
1-3-3、注意
openpyxl
不支持旧的 Excel 格式(如.xls
)。如果你需要处理这种格式的文件,可以考虑使用xlrd
或pandas
(后者依赖于xlrd
或openpyxl
来处理 Excel 文件)。- 在处理大型 Excel 文件时,请注意内存使用情况。如果文件非常大,可能需要考虑使用其他工具或方法来处理数据。
二、pdfplumber模块
pdfplumber
是一个用于从 PDF 文件中提取文本、图像和表格的 Python 库。它提供了简单的 API,使得处理 PDF 文件变得更加容易。
2-1、安装pdfplumber模块
pip install pdfplumber
2-2、示例
三、PyInstaller工具
PyInstaller 是一个用于将 Python 程序打包成独立可执行文件的工具,它可以将 Python 脚本及其依赖的库、资源文件等打包成一个单独的可执行文件,方便在没有安装 Python 环境的机器上运行。
可以生成不同格式的可执行文件,如在 Windows 上生成.exe
文件,在 Mac OS 上生成.app
文件等,以适应不同平台的运行需求。
3-1、使用 pip 安装:
在命令行中输入pip install pyinstaller
即可完成安装。
3-2、示例
要打包的py文件所在的路径:D:\WS\python-code\pythonProject1\demo01
生成两个文件夹:
PyInstaller 生成的
build
文件夹主要用于存储在打包过程中产生的临时文件和中间结果。可执行文件在dist文件夹中:
【注意】:
若是打包的py文件用到了外部数据文件,如example.txt文件, PyInstaller工具打包的时候,不会自动将脚本中使用到的外部数据文件包含到dist文件夹中。有两种方式:
方式一:手动添加到dist文件夹中
方式二:
pyinstaller --add-data "exect.txt;." -F your_script.py