成都核酸系统崩了,东软被市民连夜骂上了热榜第一,我用Python爬取了评论区,发现...
2023-06-13 09:16:05 时间
2022 年 9 月 2 日晚上快 11 点了,打开微博一看话题东软登顶微博热榜第一了。
于是本能的点进话题一探究竟,这里也不多说了,给大家放几张图吧,看了你就明白了。
因为我们是 Python 号,这里用 Python 爬一下东软话题下最热的那条微博评论。
看一下主要实现代码:
# 爬取一页评论内容
def get_one_page(url):
headers = {
'User-agent' : 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3880.4 Safari/537.36',
'Host' : 'weibo.cn',
'Accept' : 'application/json, text/plain, */*',
'Accept-Language' : 'zh-CN,zh;q=0.9',
'Accept-Encoding' : 'gzip, deflate, br',
'Cookie' : '自己的Cookie',
'DNT' : '1',
'Connection' : 'keep-alive'
}
# 获取网页 html
response = requests.get(url, headers = headers, verify=False)
# 爬取成功
if response.status_code == 200:
# 返回值为 html 文档,传入到解析函数当中
return response.text
return None
# 解析保存评论信息
def save_one_page(html):
comments = re.findall('<span class="ctt">(.*?)</span>', html)
for comment in comments[1:]:
result = re.sub('<.*?>', '', comment)
if '回复@' not in result:
with open('comments.txt', 'a+', encoding='utf-8') as fp:
fp.write(result)
微博评论爬取之前也做过,这里就不详细说了,不了解的小伙伴,可以参考:微博评论爬取。
评论内容爬取完了,这里我们用词云看一下。代码实现如下:
def jieba_():
stop_words = []
with open('stop_words.txt', 'r', encoding='utf-8') as f:
lines = f.readlines()
for line in lines:
stop_words.append(line.strip())
content = open('comments.txt', 'rb').read()
# jieba 分词
word_list = jieba.cut(content)
words = []
for word in word_list:
if word not in stop_words:
words.append(word)
global word_cloud
# 用逗号隔开词语
word_cloud = ','.join(words)
def cloud():
# 打开词云背景图
cloud_mask = np.array(Image.open('bg.png'))
# 定义词云的一些属性
wc = WordCloud(
# 背景图分割颜色为白色
background_color='white',
# 背景图样
mask=cloud_mask,
# 显示最大词数
max_words=200,
# 显示中文
font_path='./fonts/simhei.ttf',
# 最大尺寸
max_font_size=100
)
global word_cloud
# 词云函数
x = wc.generate(word_cloud)
# 生成词云图片
image = x.to_image()
# 展示词云图片
image.show()
# 保存词云图片
wc.to_file('melon.png')
看一下效果:
记忆中这种问题也不是第一次了,这里也不多说了。
相关文章
- 浙江新增python编程_9月起,浙江省八年级新增Python编程课,未来编程是处理大数据的手段…「建议收藏」
- Python判断字符串是否包含子字符串
- python爬虫—–Python访问http的几种方式「建议收藏」
- python判断linux中文件是否存在_Python判断文件是否存在的三种方法
- python读取pkl_Python 读取文件
- h5 Python_python做h5网站
- python和c交互
- python获取当前系统的日期_python怎么获取当前系统时间
- python判断文件后缀_Python 判断文件后缀是否被篡改
- python lambda表达式举例_Python中lambda表达式[通俗易懂]
- python的py文件打包成exe_python生成文件
- python程序化交易实例-用 Python 实现你的量化交易策略「建议收藏」
- Python安装失败_python第三方库安装失败
- Python 生成随机数_python 随机字符串
- eval在python中是什么意思_如何在Python中使用eval ?
- Python Scapy 愚弄入侵检测系统
- python 常见报错
- python-Python与SQLite数据库-处理SQLite查询结果(一)
- 利用python 统计源码行数详解编程语言
- Linux系统快速运行Python脚本(linux运行python脚本)
- 学习Python精通SQL Server操作技巧(python操作sqlserver)
- 快速查询MySQL数据库:Python篇(python查询mysql数据库)
- Connecting to MSSQL with Python: A Comprehensive Guide for Beginners(python连接mssql)
- Linux系统下安装Python模块指南(linux安装python模块)