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}")
相关推荐
ZhengEnCi14 小时前
M3-markconv库找不到wkhtmltopdf问题
python
2301_7644413317 小时前
LISA时空跃迁分析,地理时空分析
数据结构·python·算法
014-code17 小时前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
lly20240617 小时前
组合模式(Composite Pattern)
开发语言
游乐码18 小时前
c#泛型约束
开发语言·c#
Dontla18 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen18 小时前
python rest请求、requests
开发语言·python
cTz6FE7gA18 小时前
Python异步编程:从协程到Asyncio的底层揭秘
python
铁东博客18 小时前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui18 小时前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip