itchat is a open souce wechat api project for personal account.
It enables you to access your personal wechat account through command line.
Here is the document.
So enjoy:)
Try
You may have a try of the robot based on this project first:
Here is the code.
Installation
pip install itchat
Simple uses
import itchat, time
@itchat.msg_register(['Text', 'Map', 'Card', 'Note', 'Sharing'])
def text_reply(msg):
itchat.send('%s: %s'%(msg['Type'], msg['Text']), msg['FromUserName'])
@itchat.msg_register(['Picture', 'Recording', 'Attachment', 'Video'])
def download_files(msg):
fileDir = '%s%s'%(msg['Type'], int(time.time()))
msg['Text'](fileDir)
itchat.send('%s received'%msg['Type'], msg['FromUserName'])
itchat.send('@%s@%s'%('img' if msg['Type'] == 'Picture' else 'fil', fileDir), msg['FromUserName'])
@itchat.msg_register('Friends')
def add_friend(msg):
itchat.add_friend(**msg['Text'])
itchat.get_contract()
itchat.send('Nice to meet you!', msg['RecommendInfo']['UserName'])
@itchat.msg_register('Text', isGroupChat = True)
def text_reply(msg):
if msg['isAt']:
itchat.send(u'@%s\u2005I received: %s'%(msg['ActualNickName'], msg['Content']), msg['FromUserName'])
itchat.auto_login()
itchat.run()
FAQ
Why I can't send files whose name is encoded in utf8?
That's because of the upload setting of requests, you can put this file into packages/urllib3 of requests package.
Comments
If you have any problems or suggestions, you can talk to me in this issue
Or on gitter.