python爬取B站评论制作词云

python爬取B站评论制作词云

江山代有才人出,B站评论占一半
废话不多说,咱们直接上代码`

import imageio
import jieba
import wordcloud
import requests
from fake_useragent import UserAgent
import time

headers = {“user-agent”: UserAgent().Chrome}

“”"
原url
https://api.bilibili.com/x/v2/reply/main?callback=jQuery331011504796745002377_1639099761604&jsonp=jsonp&next=0&type=1&oid=764679443&mode=3&plat=1&=1639099761605
“”"
#第一项’callback’我们在爬取的时候需要将这参数去除就能正常访问
strs = “”
#存储评论
for pn in range(2):
time.sleep(2)
# 延时2秒
url = "https://api.bilibili.com/x/v2/reply?jsonp&next={}&type=1&oid=764679443&mode=3&plat=1&
=1639095387879".format(pn)
# 标签说明 oid:视频的id plat:排序方式 1 表示时间排序 2表示热度排序 next:页码
try: # 异常处理
data = requests.get(url, headers=headers).json()
# 请求数据 转为json格式
if data[“data”][“replies”]:
for i in data[“data”][“replies”]:
strs += i[“content”][“message”]
print(strs)
except:
print(url+“爬取异常!!!”)
with open(“alice.txt”, mode=‘w’, encoding=“UTF-8”) as f:
f.write(strs)
f.close()
print(“爬取完毕!!!”)
text = open(“alice.txt”, “r”, encoding=“UTF-8”).read()
#读取同一目录下 alice.txt 文件
ls = jieba.lcut(text)
#将text转为列表
txt = " ".join(ls)
#将词用空格隔开
im = imageio.imread(“1.png”)
#导入照片
wloud = wordcloud.WordCloud(font_path=“simkai.ttf”,
background_color=“white”,
width=600, height=400,
max_font_size=120,
max_words=1000,
mask=im)
#设置词云的属性
wloud.generate(txt)
#制作词云
wloud.to_file(“ciyun.png”)
#保存 并以ciyun.png命名存储

还有很多的不足,自己也是刚学习,有错误欢迎指正

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值