写一个Python爬虫并整合成exe的代码
时间: 2023-06-25 19:07:43 浏览: 36
以下是写一个爬取网页并整合成exe的Python代码:
```python
# 导入需要的库
import requests
import os
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QLabel, QLineEdit
# 窗口类
class MyWindow(QWidget):
def __init__(self):
super().__init__()
# 设置窗口大小和标题
self.setWindowTitle('网页爬虫')
self.setGeometry(200, 200, 400, 300)
# 添加控件
self.label_url = QLabel('网页地址:', self)
self.label_url.move(50, 50)
self.lineedit_url = QLineEdit(self)
self.lineedit_url.move(120, 50)
self.label_path = QLabel('保存路径:', self)
self.label_path.move(50, 100)
self.lineedit_path = QLineEdit(self)
self.lineedit_path.move(120, 100)
self.button_download = QPushButton('下载', self)
self.button_download.move(150, 150)
# 绑定按钮的点击事件
self.button_download.clicked.connect(self.download)
# 下载网页的函数
def download(self):
url = self.lineedit_url.text()
path = self.lineedit_path.text()
try:
# 发送请求
response = requests.get(url)
# 获取网页的内容
html = response.text
# 保存网页的内容
with open(path, 'w', encoding='utf-8') as f:
f.write(html)
# 弹出保存成功的提示框
QMessageBox.information(self, '提示', '保存成功!')
except Exception as e:
# 弹出保存失败的提示框
QMessageBox.warning(self, '警告', str(e))
# 主函数
if __name__ == '__main__':
# 创建应用程序对象
app = QApplication(sys.argv)
# 创建窗口对象
window = MyWindow()
# 显示窗口
window.show()
# 运行应用程序
sys.exit(app.exec_())
```
以上代码使用了PyQt5库来创建了一个简单的图形界面,通过输入网页地址和保存路径,点击下载按钮来完成网页的下载。接下来将使用PyInstaller库将其整合成exe可执行文件。
1. 首先要确保已经安装了PyInstaller库,可以使用如下命令进行安装:
```
pip install pyinstaller
```
2. 在命令行中进入到Python程序所在的目录,使用如下命令生成.spec文件:
```
pyinstaller -w -F 程序名.py
```
其中-w参数表示不显示命令行窗口,-F参数表示生成单个可执行文件,程序名.py为要生成可执行文件的Python程序名称。
3. 执行上一步后,会生成一个.spec文件,打开该文件,找到datas=[],修改为:
```
datas=[('路径/文件名.ui','.')]
```
其中路径/文件名.ui为程序的图形界面文件名称。
4. 使用如下命令进行编译:
```
pyinstaller -w -F 程序名.spec
```
程序名.spec为上一步生成的.spec文件名称。
5. 编译完成后,在dist目录下会生成一个可执行文件,双击即可运行程序。
相关推荐


















