日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

itchat-python搭建微信機(jī)器人(附示例)

系統(tǒng) 2008 0

itchat是python開源第三方庫(kù),用于搭建微信機(jī)器人,幾十行代碼就能幫你實(shí)現(xiàn)自動(dòng)的處理所有信息。比如,添加好友,搭建自動(dòng)回復(fù)機(jī)器人,還原撤銷信息,分析好友男女比例,地理分布情況,爬朋友圈做數(shù)據(jù)分析…

本文只是簡(jiǎn)單實(shí)現(xiàn)聊天機(jī)器人,想了解更多關(guān)于itchat的用法請(qǐng)參照:https://itchat.readthedocs.io/zh/latest/

安裝

            
pip install itchat
          

登錄

            
itchat.auto_login(hotReload=True)
          

執(zhí)行后會(huì)出現(xiàn)一個(gè)二維碼,掃碼登錄。hotReload=True可以保留登錄狀態(tài),以至于往后的重啟程序可以跳過(guò)掃碼登錄。

消息類型

參數(shù) 類型
TEXT 文本
MAP 位置
CARD 名片
SHARING 分享
PICTURE 圖片表情
RECORDING 語(yǔ)音
ATTACHMENT 附件
VIDEO 小視頻

發(fā)送消息

            
send(msg='text',toUserName=None)

          
  • msg:發(fā)送的內(nèi)容
  • toUserName:發(fā)送對(duì)象,None表示自己

內(nèi)容類型:

  • 圖片:@img@img_path
  • 視頻:@vid@vid_path
  • 文件:@fil@file_path

ps:接收到的附件路徑一般默認(rèn)存放在當(dāng)前路徑的msg[‘FileName']下

注冊(cè)會(huì)話監(jiān)聽

            
#TEXT:監(jiān)聽的消息類型
@itchat.msg_register(TEXT)
def text_reply(msg):
 #過(guò)濾掉某人,NickName是昵稱
  if msg.User['NickName'] == 'xxx':
    pass
  else:
    # return_text = tuling(msg.text)
    #這種send方法會(huì)自己回復(fù)自己的消息
    # msg.user.send(u'收到了')
    #只回復(fù)對(duì)方的消息
    return u'收到了'
 

          

圖靈聊天機(jī)器人

在圖靈機(jī)器人官網(wǎng)(http://www.tuling123.com)注冊(cè)賬號(hào),創(chuàng)建機(jī)器人,如果只是學(xué)習(xí)的話,可以使用免費(fèi)版,一個(gè)賬號(hào)最多可以創(chuàng)建5個(gè)機(jī)器人,一個(gè)機(jī)器人日調(diào)用接口數(shù)5000次。

            
#申請(qǐng)機(jī)器人后會(huì)拿到一個(gè)key
key = '3c925fbee6f84ad2aa032ab05d4581b0'
def tuling(info):
  url = "http://www.tuling123.com/openapi/api?key=%s&info=%s" % (key, info)
  r = requests.get(url)
  #返回消息
  return r.json().get('text')

          

附上完整代碼(文本圖片群聊)

            
# coding: utf-8 
# @Time  : 2019/2/20 23:32
# @Author : lsn
# @File  : itchat_demo.py
# @Software: PyCharm
import itchat
import requests
from itchat.content import *

key = '3c925fbee6f84ad2aa032ab05d4581b0'


def tuling(info):
  url = "http://www.tuling123.com/openapi/api?key=%s&info=%s" % (key, info)
  r = requests.get(url)
  return r.json().get('text')


@itchat.msg_register(TEXT)
def text_reply(msg):
  if msg.User['NickName'] == 'xxx':
    pass
  else:
    return_text = tuling(msg.text)
    # msg.user.send(return_text)
    return return_text


@itchat.msg_register(
  [PICTURE, RECORDING, ATTACHMENT, VIDEO])
def download_files(msg):
  print msg['Type']
  print msg['FileName']
  msg['Text'](msg['FileName'])
  return '@%s@%s' % ({'Picture': 'img', 'Video': 'vid'}.get(msg['Type'], 'fil'), msg['FileName'])


@itchat.msg_register(TEXT, isGroupChat=True)
def group_text_reply(msg):
  group_list = list()
  # 針對(duì)指定群回復(fù)
  group_list.append(u'彈一彈')
  group_list.append(u'養(yǎng)生游戲分享')
  # 當(dāng)然如果只想針對(duì)@你的人才回復(fù),可以設(shè)置if msg['isAt']:
  if msg.User['NickName'] in group_list:
    return tuling(msg.text)
  else:
    pass


itchat.auto_login(hotReload=True)
itchat.run()
          

參考:https://www.jb51.net/article/162809.htm

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 汉川市| 靖州| 延津县| 永登县| 宝丰县| 德江县| 定结县| 伽师县| 城步| 左贡县| 河南省| 垣曲县| 抚顺县| 崇信县| 谷城县| 行唐县| 项城市| 和平区| 新源县| 扬州市| 舟曲县| 韶关市| 托克托县| 北辰区| 手游| 涟水县| 无棣县| 新津县| 留坝县| 宝应县| 元阳县| 南木林县| 湟中县| 利辛县| 阿勒泰市| 白朗县| 略阳县| 当涂县| 高密市| 徐州市| 平顺县|