爬虫小试牛刀(知乎用户关注列表爬取 python+requests+json)

本文介绍了如何使用Python的requests和json模块爬取知乎用户廖雪峰的关注列表。首先,通过浏览器调试工具分析请求URL和所需headers参数以绕过反爬虫机制。接着,展示获取数据时遇到的400错误及解决方法,通过添加headers参数成功获取信息。同时,由于原始数据中用户名无法正常显示中文,通过引入json模块解决了这一问题。最后,说明了如何调整params参数以获取更多用户数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

知乎用户关注列表爬取

基于环境:python3.6 + requests + json 模块
调试浏览器:chrome浏览器

环境安装

  1. python可自行到官网下载
  2. requests模块和json模块安装,直接pip

    pip install requests
    pip install json

目标分析

  1. 目标用户
    廖雪峰:https://www.zhihu.com/people/liaoxuefeng

  2. f12开启调试工具

  3. 将文件类型 定位到 XHR,并点击 关注者 如下图:
    请求返回的数据一般能够在XHR 或者 JS 中可以找到,命名前缀都会与我们要的东西相关,在左边列表中找到followers开头的文件,点击,在右边的Preview下可以看到用户的关注用户数据
    在这里插入图片描述

  4. 我们从 Preview 切到 Headers 可以看到请求信息和响应信息,第一个便是请求 url

    Request URL: https://www.zhihu.com/api/v4/members/liaoxuefeng/followers?include=data[*].answer_count%2Carticles_count%2Cgender%2Cfollower_count%2Cis_followed%2Cis_following%2Cbadge[%3F(type%3Dbest_answerer)].topics&offset=0&limit=20

    先测试一下:

    import requests
    
    url = "https://www.zhihu.com/api/v4/members/liaoxuefeng/followers?include=data%5B*%5D.answer_count%2Carticles_count%2Cgender%2Cfollower_count%2Cis_followed%2Cis_following%2Cbadge%5B%3F(type%3Dbest_answerer)%5D.topics&offset=0&limit=20"
    response =</
出现这个错误的原因是在导入seaborn包时,无法从typing模块中导入名为'Protocol'的对象。 解决这个问题的方法有以下几种: 1. 检查你的Python版本是否符合seaborn包的要求,如果不符合,尝试更新Python版本。 2. 检查你的环境中是否安装了typing_extensions包,如果没有安装,可以使用以下命令安装:pip install typing_extensions。 3. 如果你使用的是Python 3.8版本以下的版本,你可以尝试使用typing_extensions包来代替typing模块来解决该问题。 4. 检查你的代码是否正确导入了seaborn包,并且没有其他导入错误。 5. 如果以上方法都无法解决问题,可以尝试在你的代码中使用其他的可替代包或者更新seaborn包的版本来解决该问题。 总结: 出现ImportError: cannot import name 'Protocol' from 'typing'错误的原因可能是由于Python版本不兼容、缺少typing_extensions包或者导入错误等原因造成的。可以根据具体情况尝试上述方法来解决该问题。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [ImportError: cannot import name ‘Literal‘ from ‘typing‘ (D:\Anaconda\envs\tensorflow\lib\typing....](https://blog.csdn.net/yuhaix/article/details/124528628)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_linbobo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值