第一个微信小项目

主要介绍利用网页端微信获取数据,实现个人微信好友数据的获取,并进行一些简单的数据分析。

一、所需要的七个第三方库及其安装

1、Pillow

PIL:Python Imaging Library,已经是 Python 平台事实上的图像处理标准库。PIL功能非常强大,但API却非常简单易用。

如果安装了Anaconda,Pillow就已经可用了。否则,需要在命令行下通过pip安装:

pip install pillow
如果遇到Permission denied安装失败,请加上sudo重试。

2、Pyecharts

是一个用于生成 Echarts 图表的类库。Echarts 是百度开源的一个数据可视化 JS 库。用 Echarts 生成的图可视化效果非常棒,pyecharts 是为了与 Python 进行对接,方便在 Python 中直接使用数据生成图。使用pyecharts可以生成独立的网页,也可以在flask、django中集成使用。

可在命令行通过pip安装:

pip install pyecharts
3、Itchat

itchat 是一个开源的微信个人号接口,使用 python 调用微信从未如此简单。

可在在命令行通过pip安装:

pip install itchat
4、Jieba

Jieba库是一款优秀的 Python 第三方中文分词库,jieba 支持三种分词模式:精确模式、全模式和搜索引擎模式,下面是三种模式的特点。

精确模式:试图将语句最精确的切分,不存在冗余数据,适合做文本分析

全模式:将语句中所有可能是词的词语都切分出来,速度很快,但是存在冗余数据

搜索引擎模式:在精确模式的基础上,对长词再次进行切分

可在在命令行通过pip安装:

pip install jieba
5、Numpy

NumPy 是一个 Python 的第三方库,代表 “Numeric Python”,主要用于数学/科学计算。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。

使用 Numpy 我们可以轻松进行如下等计算:

数组的算数和逻辑运算。
傅立叶变换和用于图形操作的例程。
与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。
可在在命令行通过pip安装:

pip install Numpy
6、Pandas

Pandas 是基于 NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。Pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具。pandas 提

供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现,它是使 Python 成为强大而高效的数据分析环境的重要因素之一。

可在在命令行通过pip安装:

pip install Pandas
7、wxpy

wxpy 在 itchat 的基础上,通过大量接口优化提升了模块的易用性,并进行丰富的功能扩展。

可在在命令行通过pip安装:

pip install wxpy
8、安装地图数据包:

pip install echarts-china-provinces-pypkg
pip install echarts-countries-pypkg
代码实现
在这里插入图片描述
结果:
在这里插入图片描述

同时展示列表:
在这里插入图片描述
对数据进行简单的分析:

Friends = bot.friends()
data = Friends.stats_text(total=True, sex=True,top_provinces=30, top_cities=500)
print(data)
在这里插入图片描述
微信机器人:
代码实现:
import itchat
import requests
import re
#抓取网页
def getHtmlText(url):
try:
r = requests.get(url,timeout=30)
r.raise_for_status()
r.encoding = r.apparent_encoding
return r.text
except:
return “”
#自动回复
#封装好的装饰器,当接收到的消息是Text,即文字消息
@itchat.msg_register([‘Text’,‘Map’, ‘Card’, ‘Note’, ‘Sharing’, ‘Picture’])
def text_reply(msg):
# 当消息不是由自己发出的时候
if not msg[‘FromUserName’] == Name[“Bevis”]:
# 回复给好友
url = “http://www.tuling123.com/openapi/api?key=60ab99c74f454946b7b98abf5d518b8c您的小图key&info=
url = url + msg[‘Text’]
html = getHtmlText(url)
message = re.findall(r’“text”:".*?"’,html)
reply = eval(message[0].split(’:’)[1])
return reply

if name == ‘main’:
itchat.auto_login()

# 获取自己的UserName
friends = itchat.get_friends(update=True)[0:]
Name = {}
Nic = []
User = []
for i in range(len(friends)):
        Nic.append(friends[i]["NickName"])
        User.append(friends[i]["UserName"])
for i in range(len(friends)):
        Name[Nic[i]] = User[i]
itchat.run()

结果:
在这里插入图片描述
实践有点小问题
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值