如何用Python爬取小红书

技术如何用Python爬取小红书如何用Python爬取小红书,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。小红书首先,我们打开之前大家配置好的charles

相信很多没有经验的人对于如何用Python爬小红书都是一窍不通的。因此,本文总结了出现问题的原因和解决方法,希望大家可以通过这篇文章来解决这个问题。

小红书

首先让我们打开大家之前配置的charles。

让我们简单的抓取一下小红书小程序(注意这是一个小程序,不是一个app)。

我没有选择app的原因是小红书的App有点难。我参考了网上的一些想法,选择了一个小程序。

1、通过charles抓包对小程序进行分析

如何用Python爬取小红书

按照我的路径,你可以发现列表中的数据已经被我们抓住了。

但你觉得结束了吗?

不不不

如何用Python爬取小红书

通过这个包捕获,我们知道数据可以通过这个api接口获得。

但是当我们把所有的爬虫写好的时候,我们会发现头中有两个很难的参数。

授权”和“x符号”

这两样东西是不断变化的,不知道从哪弄来的。

因此

2、使用mitmproxy来进行抓包

事实上,通过查尔斯抢包,我们已经清楚了整体的抢包思路。

也就是说,获取' authorization '和' x-sign '两个参数,然后对url发出get请求。

这里使用的mitmproxy和查尔斯几乎一样,是一个抓包工具。

但是mitmproxy可以用Python执行。

这样舒服多了。

举个简单的例子。

defrequest(流):

Print(flow.request.headers)在mitmproxy中为我们提供了这样一个方法,这样我们就可以通过request对象截取请求头中的url、cookies、主机、方法、端口、方案等属性。

这不正是我们想要的吗?

我们直接截取参数‘授权’和‘x符号’。

然后填写标题。

整个完成了。

以上就是我们整个爬行的想法。让我们解释一下如何编写代码。

事实上,代码并不难写。

首先,我们必须拦截搜索api的流,这样我们就可以从中获取信息。

如果‘https://www.xiaohongshu.com/fe _ api/牛蒡/微信/v2/search/notes’流入. request.url3360我们判断流的请求中是否存在搜索API的url。

来决定我们需要抓取的请求。

authorization=re . find all(' authorization ',)。*?'(.*?)' \)',字符串(flow.request.headers))[0]

x_sign=re.findall('x-sign ',)。*?'(.*?)' \)',字符串(flow.request.headers))[0]

Url=flow.request.url通过上面的代码,我们可以得到三个最关键的参数,然后我们将共同解析json。

最后,我们可以得到我们想要的数据。

如何用Python爬取小红书

如果你想得到一个单独的数据,你可以得到文章id并获取它。

' https://www . xiaohongshu.com/discovery/item/'

如何用Python爬取小红书

此页眉需要有cookies。当你随意访问一个网站时,你可以得到饼干。目前看来是固定的。

最后,您可以将数据放入csv。

总结

其实小红书爬虫的爬行并不是特别难,关键在于思维和使用的方法。

看完以上,你掌握了用Python爬小红书的方法了吗?如果您想学习更多技能或了解更多相关内容,请关注行业资讯频道。感谢阅读!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/49011.html

(0)

相关推荐

  • qt画切片地图(qt 地图演示)

    技术Qt编写地图综合应用之如何绘制雨量分布这篇文章主要介绍Qt编写地图综合应用之如何绘制雨量分布,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、前言雨量分布图是在区域地图基础上,针对区域中的每个

    攻略 2021年12月25日
  • 如何解析JDK源码Java.lang.Boolean的浅析

    技术如何解析JDK源码Java.lang.Boolean的浅析这篇文章给大家介绍如何解析JDK源码Java.lang.Boolean的浅析,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。JDK源码(j

    攻略 2021年11月20日
  • MySQL性能优化的方法是什么

    技术MySQL性能优化的方法是什么本篇内容主要讲解“MySQL性能优化的方法是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL性能优化的方法是什么”吧!一、优化思

    攻略 2021年12月3日
  • Python性能分析

    技术Python性能分析 Python性能分析性能分析装饰器
    # line profile
    import time
    from functools import wraps
    from line_profi

    礼包 2021年10月27日
  • VNPY中如何实现从发送交易指令到交易所的源代码

    技术VNPY中如何实现从发送交易指令到交易所的源代码小编给大家分享一下VNPY中如何实现从发送交易指令到交易所的源代码,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让

    攻略 2021年11月20日
  • 怎么以软件开发人员的身份更新技能

    技术怎么以软件开发人员的身份更新技能这篇文章主要介绍“怎么以软件开发人员的身份更新技能”,在日常操作中,相信很多人在怎么以软件开发人员的身份更新技能问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家

    攻略 2021年10月21日