微博话题下的数据爬取

本文介绍了如何爬取新浪微博中特定话题下的数据,以「#美国疫情#」为例,通过分析网页结构,编写爬虫代码,并针对遇到的长文本「展开全文」问题,提出了解决方案,包括检查isLongText字段并根据文章id获取完整内容。虽然方法简单,但需注意防止IP被封,同时市场上也有现成的数据爬取工具可供选择。
摘要由CSDN通过智能技术生成

1、前言

    新浪微博中,一个话题下各个媒体或用户发表在平台发表的信息是舆情研究的一个很重要的数据来源,这里记录一下一个话题下数据的爬取方式,以“#美国疫情#”话题为例。

2、话题下数据爬取

     首先参考这篇文章,分析话题下数据爬取的结构,然后仿照示例得到如下代码:

import requests
from urllib.parse import urlencode
from pyquery import PyQuery as pq
import time
import xlwt

#设置代理等(新浪微博的数据是用ajax异步下拉加载的,network->xhr)
host = 'm.weibo.cn'
base_url = 'https://%s/api/container/getIndex?' % host
user_agent = 'Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.121 Mobile Safari/537.36'

#设置请求头
headers = {
    'Host': host,
    'Referer': 'https://m.weibo.cn/search?containerid=231522type%3D1%26q%3D%23%E7%BE%8E%E5%9B%BD%E7%96%AB%E6%83%85%23',
    'User-Agent': user_agent
}

# 按页数抓取数据
d
评论 55
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值