python爬虫爬取微博评论
程序员文章站
2022-05-02 20:42:42
...
python爬虫是程序员们一定会掌握的知识,练习python爬虫时,很多人会选择爬取微博练手。python爬虫微博根据微博存在于不同媒介上,所爬取的难度有差异,无论是python新入手的小白,还是已经熟练掌握的程序员,可以拿来练手。本文介绍python爬取微博评论的代码实例。
一、爬虫微博
与QQ空间爬虫类似,可以爬取新浪微博用户的个人信息、微博信息、粉丝、关注和评论等。
爬虫抓取微博的速度可以达到 1300万/天 以上,具体要视网络情况。
难度程度排序:网页端>手机端>移动端。微博端就是最好爬的微博端。
二、python爬虫爬取微博评论
第一步:确定评论用户的id
# -*- coding:utf-8 -*-
import requests
import re
import time
import pandas as pd
urls = 'https://m.weibo.cn/api/comments/show?id=4073157046629802&page={}'
headers = {'Cookies':'Your cookies',
'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6)
AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36'}
第二步:找到html标签
tags = re.compile('</?\w+[^>]*>')
第三步:设置提取评论function
def get_comment(url):
j = requests.get(url, headers=headers).json()
comment_data = j['data']['data']
for data in comment_data:
try:
第四步:利用正则表达式去除文本中的html标签
comment = tags.sub('', data['text']) # 去掉html标签
reply = tags.sub('', data['reply_text'])
weibo_id = data['id']
reply_id = data['reply_id']
comments.append(comment)
comments.append(reply)
ids.append(weibo_id)
ids.append(reply_id)
第五步:爬取评论
df = pd.DataFrame({'ID': ids, '评论': comments})
df = df.drop_duplicates()
df.to_csv('观察者网.csv', index=False, encoding='gb18030')
以上python爬虫爬取微博评论的实例,对于新入手的小白,可以用微博端练练手哦~
上一篇: 爬取新浪微博评论
下一篇: 微博爬虫爬取正文及其评论