【开源】WechatPCAPI | 微信PC版Python接口API

2019年11月27日 3 条评论 2.1k 次阅读 4 人点赞

目前完成了对微信PC版Python接口API的开发,Github地址:https://github.com/Mocha-L/WechatPCAPI

以下是详细说明README。


WechatPCAPI

微信PC版的API接口,可通过Python调用微信获取好友、群、公众号列表,并收发消息等功能。可用于二次开发在线微信机器人、微信消息监控、群控软件、开发界面作多个微信控制软件等用途。

当前版本:@钊@

如果帮到你,帮我点个star。遇到问题可以提Issues,或关注公众号“燕幕自安”联系我。

功能列表

目前支持:

  1. 微信多开
  2. 获取好友、群、公众号列表
  3. 接收消息(包括好友、群、公众号消息)
  4. 发送消息(支持文本、图片、分享链接、文件、名片等格式)

待完成:

  1. 公众号关注
  2. 群控功能(建群、拉人进群、退群、踢人、@某人、发布群公告等功能)
  3. 加好友、删好友
  4. 反消息撤回等

怎么用?

目前提供pyd和依赖的相关文件,通过python直接import即可使用,目录里的test.py即是调用示例。如下:

  1. fromWechatPCAPIimportWechatPCAPI
  2. import time
  3.  
  4.  
  5. # 接收消息的回调函数,可自行定义
  6. def on_message(message):
  7. print(message)
  8.  
  9.  
  10. def main():
  11. # 初始化wx实例
  12. wx_inst = WechatPCAPI(on_message=on_message)
  13.  
  14. # 启动微信 目前仅支持微信V2.7.1.82
  15. wx_inst.start_wechat(block=True)
  16.  
  17. # 等待登陆成功,此时需要人为扫码登录微信
  18. whilenot wx_inst.get_myself():
  19. time.sleep(5)
  20.  
  21. # 登录成功了
  22. print(wx_inst.get_myself())
  23.  
  24. # 以下尝试发送各类消息给文件传输助手,可以换成任何人的wx_id
  25. wx_inst.send_text(to_user='filehelper', msg='777888999')
  26. wx_inst.send_link_card(
  27. to_user='filehelper',
  28. title='我的博客',
  29. desc='我的博客,红领巾技术分享网站',
  30. target_url='http://www.honglingjin.online/',
  31. img_url=''
  32. )
  33. wx_inst.send_img(to_user='filehelper', img_abspath=r'C:UsersLeonPictures1.jpg')
  34. wx_inst.send_file(to_user='filehelper', file_abspath=r'C:UsersLeonDesktop1.txt')
  35. wx_inst.send_gif(to_user='filehelper', gif_abspath=r'C:UsersLeonDesktop8.gif')
  36. wx_inst.send_card(to_user='filehelper', wx_id=wx_inst.wx_id)
  37.  
  38. time.sleep(10)
  39. # 更新所有好友信息,数据会通过上面的回调函数返回
  40. wx_inst.update_frinds()
  41.  
  42.  
  43. if __name__ == '__main__':
  44. main()

环境支持情况

windows 7/10 测试通过

python 3.7.4 理论上支持python3.6以后所有版本

微信版本 目前仅支持V2.7.1.82版本,后续会考虑兼容其他版本,目录包里有该微信版本,直接下载安装即可。

国内下载慢?

  1. 下载慢的话用百度网盘分享:
  2. 链接:https://pan.baidu.com/s/1yADEwqht8hcTTjxpkW8DXw
  3. 提取码:rneo

函数文档注释

不知道怎么调用的话,可以使用 help(类名)查看函数文档,如下:

  1. Help on classWechatPCAPIinmoduleWechatPCAPI:
  2.  
  3. classWechatPCAPI(builtins.object)
  4. | WechatPCAPI(on_message=None, on_wx_exit_handle=None, log=None)
  5. |
  6. | 微信PC版的API接口--当前版本:@钊@
  7. |
  8. | Methodsdefined here:
  9. |
  10. | __init__(self, on_message=None, on_wx_exit_handle=None, log=None)
  11. | 类初始化函数
  12. | :param on_message: 收到微信消息时的回调函数
  13. | :param on_wx_exit_handle: 微信退出的回调函数,可空
  14. | :param log: 日志句柄
  15. |
  16. | get_myself(self)
  17. | 获取我的信息,即所登录账号的信息
  18. | :return: 尚未登陆成功时为None, 登陆成功后为dict格式返回
  19. |
  20. | send_card(self, to_user, wx_id)
  21. | 发送名片
  22. | :param to_user: 发给谁(wx_id)
  23. | :param wx_id: 要发送谁的名片(wx_id)
  24. | :return: 无
  25. |
  26. | send_file(self, to_user, file_abspath)
  27. | 发送文件
  28. | :param to_user: 发给谁(wx_id)
  29. | :param file_abspath: 文件在本地的绝对路径
  30. | :return: 无
  31. |
  32. | send_gif(self, to_user, gif_abspath)
  33. | 发送gif表情
  34. | :param to_user: 发给谁(wx_id)
  35. | :param gif_abspath: gif在本地的绝对路径
  36. | :return: 无
  37. |
  38. | send_img(self, to_user, img_abspath)
  39. | 发送图片
  40. | :param to_user: 发给谁(wx_id)
  41. | :param img_abspath: 图片在本地的绝对路径
  42. | :return: 无
  43. |
  44. | send_link_card(self, to_user, title, desc, target_url, img_url='')
  45. | 发送链接分享
  46. | :param to_user: 发给谁(wx_id)
  47. | :param title: 链接标题
  48. | :param desc: 链接描述
  49. | :param target_url: 链接URL
  50. | :param img_url: 显示图片的URL
  51. | :return: 无
  52. |
  53. | send_text(self, to_user, msg)
  54. | 发送文本消息
  55. | :param to_user: 发给谁(wx_id)
  56. | :param msg: 文本消息内容
  57. | :return: 无
  58. |
  59. | start_wechat(self, block=True)
  60. | 启动微信,目前仅支持微信版本v2.7.1.82
  61. | :param block: 是否阻塞,默认阻塞
  62. | :return: 无
  63. |
  64. | update_frinds(self)
  65. | :return: 无
  66. |
  67. | ----------------------------------------------------------------------

联系我

关注微信公众号“燕幕自安”,即可获取我的联系方式。

声明

本项目仅供技术研究,请勿用于非法用途,如有任何人凭此做何非法事情,均于作者无关,特此声明。


想要转载的朋友请告知我之后转载,并注明原帖来源。

如有问题,请关注公众号回复【作者】获取我的联系方式。

想了解更多技术分享,请长按识别下方二维码关注我吧。

【开源】WechatPCAPI | 微信PC版Python接口API

 

admin

这个人太懒什么东西都没留下

文章评论(3)

  • Milu

    受益匪浅,谢谢分享学习。

    2019年12月5日
  • hick

    支持一个, 已申请加 QQ 群, 不知道底层是否可靠, 之前折腾过蛮久 web 版的相关项目后边基本都被封了, 感觉一旦被滥用了就容易被封杀

    2020年1月9日
    • admin

      @hick 目前稳定用了蛮久,没出现封号

      2020年1月14日