通过微信,python实现一键查询天气+火车票+飞机票+快递物流!

前言:

主程序:

weChat.py,主程序依赖weather、package、airlineTicket、trainTicket这几个.py文件(他们分别对应查天气、快递、机票、火车票的功能)。

源码:

已上传至github:Flowingsun007/littleSpiders

【原理】:

2.通过好友发来的相应关键词的消息(TEXT类型)调用相应的爬虫代码运行(查天气/火车/快递/飞机),然后将查询的结果自动回复。

【主要功能】:

1.对微信好友发送过来的各种类型消息进行相应识别和处理、并自动返回相应消息。

TEXT类型的消息:

如关键词:快递/火车/飞机/天气,自动回复相应内容并返回查询结果!

其他类型的消息:

a.MAP即地图类型的消息,自动回复地点名称,经纬度信息;

b.CARD即名片类型,无特别处理,直接返回msg['content'];

c.SHARING即分享类型,自动回复分享的链接;

d.NOTE即通知类型,如果是红包,则回复“谢谢红包打赏????...”否则msg['content'];

e.PICTURE图片、RECORDING语音、ATTACHMENT附件、VIDEO视频类型支持自动下载到电脑,同时将文件转发给“文件传输助手”;

2.消息自动回复功能,支持好友自助退订/订阅

如果每句话都自动回复,可能时间长了别人就会嫌烦了,这时无需手动,只要好友输入TDD即可成功退订,以后都会消息免打扰(不会自动回复),想重新开启也很简单,回复KTT即可!程序每次运行时自动读取.txt中的文件,将已经退订自动回复的好友信息加载到TDlist中,做到对于在TDlist中的好友,不调用itchat.send()方法进行自动回复,起到了消息免打扰的功能!

回复TDD,则好友动态加入TDlist列表,并将好友写入.txt中的文件中;

回复KTT,则好友从TDlist移除,更新后的TDlist重新写入到.txt中保存。

下面来几张图片,看的更直观。

文字回复效果:

控制台效果:

微信助手效果:

退订/开通效果:

其他类型回复效果:

源码在github:Flowingsun007/littleSpiders

记录一下怕以后忘了,中文名的文件可以正常下载,但是在同步发送到文件助手的过程中总失败,应该是编码问题,花了大把时间去源码里改了两个地方,然后就可以正常收发中文名的文件了。

源码包components文件夹下messages.py中:

_prepare_file()函数中此句:

with open(u'%s' % fileDir, 'rb') as f:

和upload_chunk_file()函数中此句:

'application/octet-stream'))])

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181216A0E3XQ00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券