python爬虫521

爬虫521

记录

最近想学爬虫,尝试爬取自己账号下的文章标题做个词云

csdn有反爬机制 原理我就不说啦 大家都写了

看到大家结果是加cookie

但是我加了还是521报错

尝试再加了referer 就成功了(╹▽╹)

python 复制代码
import matplotlib
import requests
from wordcloud import WordCloud
import matplotlib.pyplot as plt
import jieba

# 定义URL和请求头
url = 'https://blog.csdn.net/community/home-api/v1/get-business-list?page=1&size=40&businessType=blog&orderby=&noMore=false&year=&month=&username=PUTAOAO'

headers = {
    'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36',
'Cookie':'cookie',
'Referer':'https://blog.csdn.net/PUTAOAO?type=blog'}




# 发送GET请求
response = requests.get(url, headers=headers)

# 检查响应状态码
if response.status_code == 200:
    # 转换响应内容为JSON格式
    re=response.json()

    # 获取评论列表
    ll = re['data']['list']
    print(ll)
    # 初始化内容列表
    content = []

    # 遍历评论列表,提取内容并添加到内容列表
    for l in ll:
        content.append(l['title'])

    # 合并所有评论内容为一个字符串
    full_content = ' '.join(content)
    print(full_content)
    # 生成词云
    wc = WordCloud(font_path='C:\Windows\Fonts\STXINGKA.TTF',width=800, height=600, mode="RGBA", background_color='white').generate(full_content)

    # 显示词云
    plt.imshow(wc, interpolation='bilinear')
    plt.axis('off')
    plt.show()
else:

    print(f"请求失败,状态码:{response.status_code}")
相关推荐
CCblandy26 分钟前
前缀缓存命中率不靠引擎靠排列:本机仿真 3 轮,易变字段放开头 98.0%→0.0%
人工智能·python·算法·自然语言处理·性能优化
Sakura_j_h_1 小时前
给 FastAPI 接大模型:超时、重试和 token 成本该怎么管
python·大模型·fastapi·超时重试·token计费
forest_091 小时前
用Python复刻ClaudeDuet:主动式Agent四件套,定时晨报、后台巡检、危险动作审批(附完整可运行代码)
人工智能·python·架构·prompt·agi
小小张说故事1 小时前
Python 的函数调用到底贵在哪?拆开一次 call:51 纳秒栈帧与 *args 的 40 纳秒罚单
python
2401_885885042 小时前
国际语音C#接口怎么写?.NET环境下实现国际语音验证码批量下发
开发语言·c#·.net
程序猿乐锅2 小时前
【从0-1学习Python | 第七篇】Python 面向对象基础
开发语言·笔记·后端·python·学习·1024程序员节
Wang's Blog2 小时前
Java 项目实战: 交友项目 - 查询圈子个人动态:查询我的动态需求分析
java·开发语言·交友
lzqrzpt2 小时前
太阳能控制器选型要点:电路工艺与工程适配技术解析
python·1024程序员节
凯瑟琳.奥古斯特2 小时前
力扣1016高效解法:剪枝优化技巧
开发语言·c++·算法·leetcode·职场和发展
databook3 小时前
时间序列数据中,如何找出缺失值
python·数据分析