本文目录一览:
python爬虫做qq机器人的问题
我觉得是可能是因为没带cookie造成的吧?顺便说一下,ptqrtoken是「cookie里面的qrsig的hash33」,代码在github的justko/qzonelib,虽然写的不好,给我加个星星吧:-)
def check_qrcode(self):
qrsig=None
for i in self.qq_cookie:
if i.name=='qrsig':
qrsig=i.value
break
if qrsig is None:
print("QR_Code识别码没有找到,需要重新下载")
raise RuntimeError
req=urllib.request.Request(
url=""
"?u1=https%3A%2F%2Fqzs.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone"
"ptqrtoken="+str(QQ.__hash33(qrsig))+
"ptredirect=0h=1t=1g=1from_ui=1ptlang=2052"
"action=0-0-1509338784922"
"js_ver=10231js_type=1login_sig=pt_uistyle=40aid=549000912daid=5"
)
res=self.opener.open(req).read().decode()
result = re.match("ptuiCB\('([^']*)','[^']*','([^']*)','[^']*','([^']*)', '(.*)'\)", res)
code=result.group(1)
success_url=result.group(2)
info=result.group(3)
username=result.group(4)
return code,success_url,info,usernamedef check_qrcode(self):
iOS可以做QQbot吗
不可以。
qqbot是一个python语言的基于smartqq协议的python库,他可以实现监听qq聊天,发送特定qq消息,从而能制作一个自己的qq机器人。不能ios下载。
ios很多软件都不能下载,没有权限的。
利用python + qqbot + 聚合数据api 实现qq智能聊天机器人
from qqbot import QQBotSlot as qqbotslot,RunBot
from random import randint
@qqbotslot
def onQQMessage(bot, contact, member, content):
#在这里过滤过来的输入, content的内容是监听qq上所有的输入
# 当群里有人@你的时候 传入过来的会被转化为[@ME]
# 所以使用 @ME 来过滤其他人在群里面at你
if '@ME' in content:
#四个参数的详细
#bot : QQBot 对象,提供 List/SendTo/Stop/Restart 四个接口,详见本文档第五节
#contact : QContact 对象,消息的发送者,具有 ctype/qq/uin/nick/mark/card/name 属性,这些属性都是 str 对象
#member : QContact 对象,仅当本消息为 群或讨论组 消息时有效,代表实际发消息的成员
#content : str 对象,消息内容
bot.SendTo(contact,'@'+ member.name+ " 哈哈 ")
#这里是因为部分群里面的at无法转化为[@ME]所以自己过滤at自己的内容
elif '@' in content and '光' in content:
bot.SendTo(contact,'@'+ member.name+ " 哈哈 ")
RunBot()```