python itchat 抢红包-Python itchat模块在微信上的各种小应用

前两天在51cto看见某篇推荐博文,大概是一个Python的小程序可以读取微信撤回的信息。豆子比较感兴趣,在知乎和github上搜索了相关的源代码,发现原来实现起来非常的简单,他的核心是使用一个叫做itchat的模块,这个模块模拟微信网页版的登录过程,然后之后就可以很轻松读取和发送信息了。

第一次使用的时候可能对他的格式有点疑惑,但是写两个小例子之后就比较熟悉这些模块里面的函数了,可以很容易地对好友,群聊和公众号的各种类型的信息进行读取,存储,写入。完全可以发挥想象在这个平台上做很多操作。

网上有很多相关的简介和有趣的应用小程序,这些小程序大小不超过百行,但是功能都很有趣

http://itchat.readthedocs.io/zh/latest/#itchat

比较有趣的小程序有:

图灵机器人自动对话,你甚至可以直接绑定这个API和某人甚至某群聊,这样对方和你交流的时候,图灵机器人都会替你自动回复啦

http://itchat.readthedocs.io/zh/latest/tutorial/tutorial0/

网易云音乐播放器,消息群发,检测黑名单好友等等

https://itchat.readthedocs.io/zh/latest/tutorial/tutorial2/

读取微信撤回的信息等等

https://zhuanlan.zhihu.com/p/25689314

豆子依葫芦画瓢,也弄了个类似的,可以通过微信获取城市PM2.5的状态

源代码很简单:

微信发送城市的名称,获取之后,读取www.pm25.com上面的数据,然后把结果发给微信

import urllib.request

from time import ctime

from bs4 import BeautifulSoup

import itchat

def getPM25(cityname):

site = "http://www.pm25.com/" + cityname + ".html"

page = urllib.request.urlopen(site)

html = page.read();

soup = BeautifulSoup(html.decode("utf-8"),"html.parser")

city = soup.find(class_="bi_loaction_city")  # 城市名称

aqi = soup.find("a", {"class", "bi_aqiarea_num"})  # AQI指数

quality = soup.select(".bi_aqiarea_right span")  # 空气质量等级

result = soup.find("div", class_="bi_aqiarea_bottom")  # 空气质量描述

output=city.text + u"AQI指数:" + aqi.text + u" 空气质量:" + quality[0].text + result.text

print(output)

print("*" * 20 + ctime() + "*" * 20)

return output

itchat.auto_login(hotReload=True)

Help="""

友情提示:

请输入城市拼音获取天气结果,如果无法识别,自动返回首都记录

"""

itchat.send(Help,toUserName="filehelper")

@itchat.msg_register(itchat.content.TEXT)

def getcity(msg):

if msg["ToUserName"] != "filehelper": return

print(msg["Text"])

cityname=msg["Text"]

result=getPM25(cityname)

itchat.send(result,"filehelper")

if __name__ == "__main__":

itchat.run()

-------------------------

Chongqing

重庆AQI指数:45

空气质量:优

PM2.5浓度:31微克/立方米

击败了全国 70% 的城市,目前城市排名 110

********************Fri Mar 24 09:57:49 2017********************

Xichang

西昌AQI指数:25

空气质量:优

暂未统计PM2.5

********************Fri Mar 24 09:58:21 2017********************

wKiom1jUWZWC9QcWAAOUbJJ94-E531.png

wKioL1jUWZODMdd0AAQPkuN3ykE822.png

©著作权归作者所有:来自51CTO博客作者beanxyz的原创作品,如需转载,请注明出处,否则将追究法律责任

PythonitchatPython

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值