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

       

posted @ 2025-01-08 01:48  eliwang  阅读(217)  评论(0)    收藏  举报