python爬虫 - 爬取Ajax获取的Json格式数据(个人微博)
    		       		warning:
    		            这篇文章距离上次修改已过453天,其中的内容可能已经有所变动。
    		        
        		                
                
import requests
import json
 
# 微博个人主页的URL
url = 'https://m.weibo.cn/api/container/getIndex?type=uid&value=2830678474&containerid=1076032830678474'
 
# 设置请求头,模拟浏览器访问
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3',
    'X-Requested-With': 'XMLHttpRequest',
    'Cookie': '你的微博Cookies'
}
 
# 发送请求
response = requests.get(url, headers=headers)
 
# 解析JSON数据
data = json.loads(response.text)
 
# 提取微博数据
cards = data['data']['cards']
for card in cards:
    if 'mblog' in card:
        mblog = card['mblog']
        created_at = mblog['created_at']
        text = mblog['text']
        attitudes_count = mblog['attitudes_count']
        comments_count = mblog['comments_count']
        reposts_count = mblog['reposts_count']
 
        print(f"发布时间: {created_at}")
        print(f"微博内容: {text}")
        print(f"赞: {attitudes_count}")
        print(f"评论: {comments_count}")
        print(f"转发: {reposts_count}")
        print("\n")
 
# 注意:此代码未完全测试,可能需要根据实际情况进行调整。
# 例如,你需要替换'你的微博Cookies'为实际的登录Cookies,以及可能需要处理分页等情况。这段代码使用了Python的requests库来发送HTTP请求,并使用json库来解析JSON数据。它提取了用户微博的发布时间、内容、赞、评论和转发数等信息,并打印出来。需要注意的是,你需要替换'你的微博Cookies'为实际的登录Cookies,以及可能需要处理分页等情况。
评论已关闭