分享好友 最新动态首页 最新动态分类 切换频道
使用Python爬取小红书笔记与评论(仅供学习参考)
2024-11-06 04:18

🏠作者主页】吴秋霖
💼作者介绍】:擅长爬虫与JS加密逆向分析!Python领域优质创作者、CSDN博客专家、阿里云博客专家、华为云享专家。一路走来长期坚守并致力于Python与爬虫领域研究与开发工作
🌟作者推荐】:对爬虫领域以及JS逆向分析感兴趣的朋友可以关注《爬虫JS逆向实战》《深耕爬虫领域》
未来作者会持续更新所用到、学到、看到的技术知识!包括但不限于:各类验证码突防、爬虫APP与JS逆向分析、RPA自动化、分布式爬虫、Python领域等相关文章

使用Python爬取小红书笔记与评论(仅供学习参考)

作者声明:文章仅供学习交流与参考!严禁用于任何商业与非法用途!否则由此产生的一切后果均与作者无关!如有侵权,请联系作者本人进行删除

  目前很多小伙伴可能或多或少都需要一些基础的笔记或者评论数据进行分析!有的可能想要通过一些关键词进行搜索,获取一些精准领域的笔记内容。有的则希望监测某篇笔记下面新增的评论内容。从技术角度来说,在作者之前的文章中我们除了通过对x-s、x-s-common参数进行逆向分析还原外,还可以通过JS注入免扣加密算法的RPC方案去提取获取到加密参数,再通过协议请求获取数据

但是,不管哪一种方案对于没有爬虫以及编程经验的人来说无疑是有一定难度与门槛的

所以,在此前的一段时间内。作者也是尝试并封装了一些API进行过测试,比如

  • 关键词搜索
  • 笔记获取
  • 评论获取
  • 旋转滑块验证码

如果你是一名开发者且有爬虫相关的经验!可以去看看作者之前的文章,相关参数加密分析及完整的一些算法及密钥信息以及如何定位都在这篇文章:x-s、x-s-common加密纯算法还原(2024-9-1更新

RPC跟注入怎么进行?当然需要先找到加密入口,可以看到上图断点处l包含x-s跟x-t的返回,那么加密操作就在上面完成。看下面这行代码

window._webmsxyw函数内即加密逻辑,在自执行函数内部并添加在了window属性中

该函数接受两个参数,s是api接口的路径,i是请求提交的参数

这是一种实现思路,提供大家进行参考!相对于纯自动化效率肯定要好,具体方案可以考虑使用Playwright或者pyppeteer实现,通过浏览器的Javascript注入来获取到加密参数,实现方案Demo分别如下所示

  • Playwright实现示例
  • pyppeteer实现示例

上面的stealth.min.js脚本是一位大佬开源的!注入的作用是为了防止被检测,另外CK参数需要设置属性来避免Web端出现滑动验证码

当然,这个都是最终工程化需要考虑的事情,这里主要还是通过非逆向分析的方式去解决加密参数问题

window.localStorage在之前加密分析的文章中已经详细介绍了localStorage是一个在浏览器中存储键值对的API,通常用于持久化地存储数据,所需的b1参数就在其中

x-s跟x-t的加密参数通过注入的方式能够直接拿到,但是x-s-common的参数仍需要通过加密算法生成!但是这个参数目前适用的并不多,仍然以x-s参数检测为主

Python版本的sign加密算法在之前的加密分析文章中已分享!注入的方式主要为了获取到这些个参数x-s、x-t、b1

JS注入的方式对于有前端基础及经验的小伙伴,就很简单了。通过上面的方式获取到所有的加密参数后,接下来就是爬虫的工程化下图是feed接口

以笔记搜索为例,下面对数据的抓取的示例是采用的协议(非浏览器自动化或注入)的方式。需要注意一下search_id是动态生成的!完整的爬虫代码实现如下所示

最后,如果没有编程与爬虫经验的小伙伴!有研究、学习的需求也可以找作者领取开箱即用的完整项目源码进行学习!当然大家有兴趣的也可以根据文章所提供分享的思路自己进行研究与实现,没有太大难度!可以找作者给予必要的技术指导

关于数据的获取,像笔记关键词搜索出来的所有笔记内容在抓取完成后均会自动存储到本地的Excel文件内,如下所示

笔记所对应的所有评论内容在抓取完成后同样也会存储在本地的Excel文件内,如下所示

获取只需要笔记下面所有的全量一级、二级评论内容,可以直接去指定笔记ID然后获取,如下所示

最新文章
火出圈的ChatGPT,如何让安全检测更智能
ChatGPT(Chat Generative Pre-trained Transformer)是一款美国OpenAI研发的聊天机器人程序,能够通过理解和学习人类语言来进行对话,根据聊天的上下文与使用者互动,真正像人类一样聊天交流。它甚至能完成
GP人工智能网页版的易用性分析
GP人工智能网页版的易用性分析可以从以下几个方面进行详细探讨:个性化推荐:通过分析用户的浏览历史、兴趣偏好等数据,智能网页能够为用户提供个性化的内容推荐,提升用户体验。以GPD人工智能网页版为例,它利用先进的推荐算法,根据用户
预告丨跨年狂欢,来殷墟就够了!
与万千同城网友一起聚焦安阳!建站18年 | 关注民生丨服务生活点此亲启致过去一年亲爱的自己站在岁末的路口回首望去每个人都走过了一段时光的路有过春日里的希望萌动也有夏日骄阳下的炽热奔忙可能秋日的落叶写着失落与怅惘但是只要把掌心贴
普通下载url与迅雷快车旋风下载地址转换原理分析
例如华军winrar 3.71的下载地址是普通下载url与迅雷快车旋风下载地址转换原理分析_千里疯狂 http://p2s.newhua.com/down/wrar371sc.exe 1、普通地址转换为迅雷地址 在原地址前面加”AA”,后面加”ZZ”(注:不包括引号),
《SEO推广秘籍:揭秘如何打造搜索引擎营销的视觉革命与媒介深度》(SEO推广秘籍如何让你的网站一夜爆红)
:SEO推广:揭秘提升网站排名的秘密武器随着互联网的快速发展,越来越多的企业开始重视网络营销,而SEO(搜索引擎优化)推广成为了企业提升网站排名、增加流量的重要手段。那么,SEO推广究竟是如何工作的?又有哪些方法可以帮助企业提升网
10个神级插件, 让Edge成为全世界最爽的浏览器
创作立场声明:个人日常工作技巧分享, 神级插件让Edge效率起飞大家好, 我是胡侃侃。Microsoft Edge 浏览器毫无疑问是2020年最棒的浏览器产品,在此之前,相信绝大部分人心中最好用的浏览器是Chrome浏览器,它简洁、快速、稳定、而且有着
google注册帐号用过多次如何注册?
*温馨提醒 :如果您在注册申请google谷歌gmail邮箱账号时遇到了:此电话号码无法用于验证、此电话号码验证次数太多、账号您无法注册的问题;您可以这样解决!【解决方案】手机安装「 词令 」App,打开后输入口令「 账号99 」,搜索直达该口
杰奇建站CMS1.7免费版:小说连载网站的构建利器
杰奇建站CMS 1.7是一款针对个人及小型企业的免费内容管理系统(CMS)。它的设计旨在提供易于安装和使用的界面,使用户能够快速构建和维护网站,无需深入的技术知识。本章节将介绍杰奇CMS 1.7的基础功能以及它的特
SEO网站如何更新,提升搜索引擎排名的策略与技巧,优化SEO,提升搜索引擎排名的关键策略和技巧
随着互联网技术的飞速发展和网络营销的广泛应用,SEO网站优化已成为企业提高在线可见度、扩大市场份额的重要手段,在SEO实践中,有些企业和个人会忽视对SEO网站进行定期更新,导致网站收录量降低、搜索引擎排名下降甚至无法在搜索引擎中找
相关文章
推荐文章
发表评论
0评