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}")
相关推荐
tkevinjd7 小时前
MiniCode 项目详解6:原项目控制系统的10个缺陷(已修复)
python·llm·agent
星栈独行8 小时前
翻完 Pi 源码:它和 Codex、Claude Code 有何不同
开发语言·javascript·人工智能·程序人生
dNGUZ7UGj8 小时前
10分钟完成第一个Python小游戏
python·django
没有梦想的咸鱼185-1037-16638 小时前
AI-Python机器学习与深度学习技术:CNN/Transformer/扩散模型、SHAP可解释及Hermes智能体自动化
人工智能·python·深度学习·机器学习·chatgpt·cnn·transformer
qq_448011168 小时前
C语言中的变量和函数的定义与声明
android·c语言·开发语言
霸道流氓气质9 小时前
SpringBoot中通用工具类库(Utils)封装与使用实践
spring boot·后端·python
孫治AllenSun10 小时前
【DataX】生产环境搭建DataX集群案例
java·开发语言·jvm
Draina10 小时前
CBC填充预言攻击-CBC Padding Oracle Crypto Attack
python·安全·web安全·网络安全·密码学·安全性测试
c2385611 小时前
把 C++ 内存分配拆透:new 与 malloc 的三层血缘
开发语言·c++·算法
Angel Q.11 小时前
特征提取 | DINO 到 DINOv3
图像处理·python