python微信机器人简单使用以及打包成exe文件
一、微信机器人项目:https://github.com/why2lyj/ItChat-UOS
二、简单使用
-
安装
pip install itchat-uos==1.5.0.dev0
-
使用
import itchat itchat.auto_login() # itchat.auto_login(hotReload=True) # 可以保持登录状态,即使程序退出也能保持登录状态。 print('登录成功') # 1、向文件传输助手发送消息 # itchat.send('正在测试微信机器人', toUserName='filehelper') # 2、向好友发送消息 friend = itchat.search_friends(nickName='好友昵称')[0] # 用户名 itchat.send('您好呀!我正在测试微信机器人!', toUserName=friend['UserName']) itchat.logout() print('成功退出')
-
注意:有封号风险
三、打包
- 安装依赖
pip install pyinstaller
- 进入项目目录,比如:
my_project/ ├── main.py ├── module1.py ├── module2.py └── config/ └── config.yaml
- 命令行执行,打包main.py文件,生成的exe文件名my_program.exe
cd path/to/my_project pyinstaller --onefile --name my_program main.py
--onefile
:将所有文件打包成一个独立的可执行文件。- 打包完成后,
PyInstaller
会在dist
目录下生成一个my_program.exe
文件
- 进一步配置
pyinstaller --onefile --windowed --icon=your_icon.ico --add-data "config/config.yaml;config" --name my_program main.py
--windowed
:用于隐藏控制台窗口(适用于 GUI 应用程序)。--icon=your_icon.ico
:用于指定可执行文件的图标。--add-data "config/config.yaml;config"
:用于包含额外的数据文件,表示将config.yaml
文件放在config
目录下。如果存在多个文件需要添加,可以依次使用--add-data- 扩展示例
pyinstaller --onefile --add-data "source.js;." main.py
--add-data: 将非python文件(这里是js文件)包含在打包结果中,格式:"源文件;目标位置",'.'表示js文件打包后,与可执行文件放在同一目录下,windows下使用';'分隔,linux/mac使用':'分隔
- main.py和utils.py两个文件打包示例
import sys import os # 判断是否是打包后的环境 if getattr(sys, 'frozen', False): # 如果是打包后的exe,路径在 `sys._MEIPASS` base_dir = sys._MEIPASS else: # 正常运行时,使用当前目录 base_dir = os.path.dirname(__file__) # 将 utils.py 所在目录加入系统路径 sys.path.append(base_dir) # 现在可以正常导入 utils from utils import your_function
- 打包
pyinstaller --onefile --add-data "utils.py;." main.py