GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

littlecodersh

ItChat – Wechatのための完全かつ優雅なAPI。 微信者、微信人、微信人、三十行即時自立義務者。http //itchat.readthedoc..

投稿日:

Wechatのための完全かつ優雅なAPI。 微信者、微信人、微信人、三十行即時自立義務者。http : //itchat.readthedocs.io

itchat

英語版

それは、pythonを使用して微微妙な人を接続することです。

使用不能三十代の代用、你就可以完成一个性处理有信信微机器人。

当然、使用することは不可能であり、他の機能もありません。

公衆と公衆との接続は、共用機と類似の操作方法、学習一次掌握请求工具。

どのような微変化もありますが、あなたの微妙な微信号、方針的な生活。

安眠

それは、

pip install itchat

简单入门实例

それはあなたのために必要なものです。

import itchat

itchat.auto_login()

itchat.send('Hello, filehelper', toUserName='filehelper')

あなたは、あなたの欲望を満たすために、

import itchat

@itchat.msg_register(itchat.content.TEXT)
def text_reply(msg):
    return msg.text

itchat.auto_login()
itchat.run()

一歩進んだアプリケーションは、下にある開発者のリソースとアプリケーションを使用して実行することができます。

试一试

百人不一一见、有兴趣可以试一一下。

自动通过友达认证功能演出时间关闭。

截屏

进阶应用

特殊な字典使用方法

それはあなたのためのものです。

但し実际上itchat精心构造了相处的消息、用户、群聊、公众号群。

それ以外の場合は、

@itchat.msg_register(TEXT)
def _(msg):
    # equals to print(msg['FromUserName'])
    print(msg.fromUserName)

属性名は首尾よく下書きされます。

author = itchat.search_friends(nickName='LittleCoder')[0]
author.send('greeting, littlecoder!')

各類型消息様式ノート

それ以外の場合は、

import itchat, time
from itchat.content import *

@itchat.msg_register([TEXT, MAP, CARD, NOTE, SHARING])
def text_reply(msg):
    msg.user.send('%s: %s' % (msg.type, msg.text))

@itchat.msg_register([PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
    msg.download(msg.fileName)
    typeSymbol = {
        PICTURE: 'img',
        VIDEO: 'vid', }.get(msg.type, 'fil')
    return '@%s@%s' % (typeSymbol, msg.fileName)

@itchat.msg_register(FRIENDS)
def add_friend(msg):
    msg.user.verify()
    msg.user.send('Nice to meet you!')

@itchat.msg_register(TEXT, isGroupChat=True)
def text_reply(msg):
    if msg.isAt:
        msg.user.send(u'@%s\u2005I received: %s' % (
            msg.actualNickName, msg.text))

itchat.auto_login(True)
itchat.run(True)

命令行二维码

ログイン時に使用可能なメッセージを表示するには、次の手順を実行します。

itchat.auto_login(enableCmdQR=True)

部分系統可能字幅宽度有限公司enableCmdQR赋值特有倍数进行调整调整:

# 如部分的linux系统,块字符的宽度为一个字符(正常应为两字符),故赋值为2
itchat.auto_login(enableCmdQR=2)

盲の背景色(黑色)、若い背景色(白)、可以将enableCmdQR値:

itchat.auto_login(enableCmdQR=-1)

退出程序後暂存登状態態

一定時間内に、重大な脅威が発生している可能性があります。

itchat.auto_login(hotReload=True)

ユーザーの検索

search_friendsメソッドを使用して、次の検索を行う:

  1. 仅取る自己的なユーザ情報
  2. 特定のUserName取得する
  3. 微量信号、昵称中的任務などのnameキーの使用のためのユーザー
  4. 微量信号、銘柄别注、相关键値的用户

其中三、四条可以一使用、下载例程序:

# 获取自己的用户信息,返回自己的属性字典
itchat.search_friends()
# 获取特定UserName的用户信息
itchat.search_friends(userName='@abcdefg1234567')
# 获取任何一项等于name键值的用户
itchat.search_friends(name='littlecodersh')
# 获取分别对应相应键值的用户
itchat.search_friends(wechatAccount='littlecodersh')
# 三、四项功能可以一同使用
itchat.search_friends(name='LittleCoder机器人', wechatAccount='littlecodersh')

公立号については、グループ内の検索と検索の詳細がより詳細に紹介されています。

附属的なダウンロードと送信の送信

itchat的な添付ファイルのメソッドは、テキストの中にメッセージを保存します。

ファイル名を派生した名前を付けてください。

ダウンロード方法の使用可能な位置情報(包括文件名)、并将文件相続的存储。

@itchat.msg_register([PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
    msg.download(msg.fileName)
    itchat.send('@%s@%s' % (
        'img' if msg['Type'] == 'Picture' else 'fil', msg['FileName']),
        msg['FromUserName'])
    return '%s received' % msg['Type']

それは、あなたのために必要なものではありません。

@itchat.msg_register([PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
    with open(msg.fileName, 'wb') as f:
        f.write(msg.download())

用户多開

使用される命令の数が多すぎます:

import itchat

newInstance = itchat.new_instance()
newInstance.auto_login(hotReload=True, statusStorageDir='newInstance.pkl')

@newInstance.msg_register(itchat.content.TEXT)
def reply(msg):
    return msg.text

newInstance.run()

退出及び登場完成後の服用方法

ログイン完了後の方法はloginCallback中に必要不可欠です。

exitCallback中の値は必要ありませexitCallback

import time

import itchat

def lc():
    print('finish login')
def ec():
    print('exit')

itchat.auto_login(loginCallback=lc, exitCallback=ec)
time.sleep(3)
itchat.logout()

若干の不具合loginCallbackの値、规则の自动删除二重码の写真、并行顺。

解決策

Q:どうやって微弱信号を制御するのですか?

A:有名な方法:ファイルを送信して、ユーザー名で消えてください;ファイル転送の手助け(filehelper)

Q:Q:Q:私は、

A:ファイル名を使用してfilehelper送信し、filehelper代替を使用してください。

作者

LittleCoder :Python2 Python3のバージョン。

tempdban :协议、构造及び日常维护。

Chyroc :完成第一版本的Python3构架。

类似项目

youfou / wxpy :优秀的なAPIパッケージと配付插件、微信机器/优雅的微信个人号API

liuwons / wxBot :Pythonの微信机器

zixia / wechaty :Javascript(ES6)に基づいて微妙な人物を表示NodeJS框架/库

sjdy521 / Mojo-Weixin :Perl言語を使用して微妙な人の宇宙を援助する、HTTPを使用して可溶性の宇宙を提供する仲介的なアプリケーションとの接続その他の言語の调用

HanSon / vbot :PHP7の微信个人号机器、过程实现匿名识别可适的施設实现现在各种设定的功能

yaphone / itchat4j :Java開発のための微信号能力

kanjielu / jeeves :使用するspringboot开发的微信机器人

问题和議

問題と我が家の議論

または也也可以gitter上交流:

当然の理由で私は新しいQQ群議会:549762872、205872856







-littlecodersh
-, , ,

執筆者: