wxpy README

The project's README from github.com/youfou/wxpy. As one markdown file: README.md.

wxpy: 用 Python 玩微信

.. image:: https://badge.fury.io/py/wxpy.svg :target: https://badge.fury.io/py/wxpy

.. image:: https://img.shields.io/pypi/pyversions/wxpy.svg :target: https://github.com/youfou/wxpy

.. image:: https://readthedocs.org/projects/wxpy/badge/?version=latest :target: http://wxpy.readthedocs.io/zh/latest/?badge=latest

微信机器人 / 可能是最优雅的微信个人号 API wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展

.. attention::

| **强烈建议仅使用小号运行机器人!**

| 从近期 (17年6月下旬) 反馈来看,使用机器人存在一定概率被限制登录的可能性。
| 主要表现为无法登陆 Web 微信 (但不影响手机等其他平台)。

用来干啥

一些常见的场景

总而言之,可用来实现各种微信个人号的自动化操作

.. 体验一下 ----------------

**这有一个现成的微信机器人,想不想调戏一下?**

记得填写入群口令 👉 [ **wxpy** ],与群里的大神们谈笑风生 😏

..  image:: https://github.com/youfou/wxpy/raw/master/docs/wechat-group.png

轻松安装

wxpy 支持 Python 3.4-3.6,以及 2.7 版本

将下方命令中的 "pip" 替换为 "pip3" 或 "pip2",可确保安装到对应的 Python 版本中

  1. 从 PYPI 官方源下载安装 (在国内可能比较慢或不稳定):

.. code:: shell

pip install -U wxpy
  1. 从豆瓣 PYPI 镜像源下载安装 (推荐国内用户选用):

.. code:: shell

pip install -U wxpy -i "https://pypi.doubanio.com/simple/"

简单上手

登陆微信:

.. code:: python

# 导入模块
from wxpy import *
# 初始化机器人,扫码登陆
bot = Bot()

找到好友:

.. code:: python

# 搜索名称含有 "游否" 的男性深圳好友
my_friend = bot.friends().search('游否', sex=MALE, city="深圳")[0]

发送消息:

.. code:: python

# 发送文本给好友
my_friend.send('Hello WeChat!')
# 发送图片
my_friend.send_image('my_picture.jpg')

自动响应各类消息:

.. code:: python

# 打印来自其他好友、群聊和公众号的消息
@bot.register()
def print_others(msg):
    print(msg)

# 回复 my_friend 的消息 (优先匹配后注册的函数!)
@bot.register(my_friend)
def reply_my_friend(msg):
    return 'received: {} ({})'.format(msg.text, msg.type)

# 自动接受新的好友请求
@bot.register(msg_types=FRIENDS)
def auto_accept_friends(msg):
    # 接受好友请求
    new_friend = msg.card.accept()
    # 向新的好友发送消息
    new_friend.send('哈哈,我自动接受了你的好友请求')

保持登陆/运行:

.. code:: python

# 进入 Python 命令行、让程序保持运行
embed()

# 或者仅仅堵塞线程
# bot.join()

模块特色

说明文档

http://wxpy.readthedocs.io

更新日志

https://github.com/youfou/wxpy/releases

项目主页

https://github.com/youfou/wxpy

wxpy (youfou/wxpy)

Searching Database…

14.3K ·GitHub
archived
这是什么?这是一个 Python 库,用来自动化操作个人微信账号:它提供一套机器人 API,让你在自己的脚本里收发消息、管理好友和群聊。
那它是一个现成的机器人软件,还是要我写代码调用的东西?它是一个写代码调用的库,不是成品软件:你需要导入它,创建一个 Bot,然后编写处理函数。它在老项目 itchat 的基础上封装了一套更优雅的面向对象 API,还附带了一些额外的组件。
我怎么把机器人跑起来?先运行 pip install -U wxpy(建议国内用户使用豆瓣镜像源),然后用 Bot() 创建一个机器人,扫描它显示的二维码登录。调用 embed() 可以让脚本保持运行,并顺便交互式地探索一下。
我现在的 Python 版本能用吗?只支持 Python 3.4-3.6 或 2.7 —— 这个项目出来得早,新版本都不支持,所以你得装一个旧版的解释器才能运行。
在我常用的微信大号上跑这个安全吗?不安全 —— 微信对机器人有限制:2017 年年中以来,不少用户反馈网页版微信无法登录(手机 App 不受影响),所以作者强烈建议用小号来跑。另外这个仓库已经归档,不再维护了。
这个机器人具体能干什么?都是日常的微信自动化操作:发送文字、图片、视频和文件;按名称或性别、城市等属性搜索好友、群聊和群成员;读取昵称、备注和地区;还能管理联系人 —— 加好友、建群、拉人或踢人。
怎么让它对收到的消息做出反应?用 @bot.register() 注册处理函数 —— 可以针对所有消息、某个特定好友,或特定消息类型,比如用 FRIENDS 自动通过好友申请。回复默认在多个线程里运行,响应更快;需要时也可以直接混用 itchat 的原始调用。
大家实际用它来做些什么?README 里列的典型用法:把脚本的日志推送到微信、通过开放 API 控制路由器或智能家居设备、在多个账号或群聊之间转发消息、自动加群,或者搭一个聊天机器人陪聊。
有没有方便调试和折腾的功能?有 —— embed() 会在机器人保持登录的状态下给你开一个 Python 交互式解释器,可以随手摆弄好友、聊天和消息;此外还内置了一个现成的聊天机器人组件。
Creator
youfou
Size
0.6 MB
Stars
14.3K
Age
9y
Commits · 90 Days