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}")
相关推荐
学习智者9 分钟前
《玄》IDE v3.6.3重磅发布:全功能修复与性能飞跃
开发语言·c++·ide·算法·中文语言 玄
奔跑吧树袋熊15 分钟前
多租户隔离该做到哪一层:从连接池到 ORM 的取舍
开发语言·数据库·oracle·系统架构
大江东去浪淘尽千古风流人物18 分钟前
【LoMa】局部特征匹配重访:从LoMa-B到旋转不变LoMa-R的架构与工程实践
开发语言·深度学习·计算机视觉·r语言·视觉定位·sfm·局部特征匹配
菜鸟~noob23318 分钟前
【电子战】测向精度极限——克拉美-罗下限(CRLB)与误差分析【含matlab代码】
开发语言·matlab
m0_7345717619 分钟前
深入理解C++ 析构函数<二>析构顺序
开发语言·c++
ocean210320 分钟前
2025-2026年Python大厂面试高频问题
python·面试·面试经验
T1mzhou29 分钟前
ARM64 Linux 6.10 内核驱动(14):drivers/base/platform.c:板级设备主战场
linux·c语言·开发语言·arm开发
小孩玩什么29 分钟前
深入理解字符串匹配算法:BF算法,KMP算法
java·c语言·开发语言·数据结构·c++·算法
clz131452140 分钟前
设备反欺诈的四大支柱:从设备指纹到关联图谱
开发语言·php
xn713342 分钟前
实测 Codex CLI 0.154.0:response.failed 为什么会被 idle timeout waiting for SSE 覆盖
python·openai