Python实现JS解密并爬取某音漫客网站


Posted in Python onOctober 23, 2020

首先打开网站

https://www.zymk.cn/1/37988.html

打开开发者工具

Python实现JS解密并爬取某音漫客网站

选择XHR标签页,没有找到什么

再查看一下这些图片的URL值

http://mhpic.xiaomingtaiji.net/comic/D%2F%E6%96%97%E7%A0%B4%E8%8B%8D%E7%A9%B9%E6%8B%86%E5%88%86%E7%89%88%2F20%E8%AF%9D%2F1.jpg-zymk.middle.webp

尝试搜索图片元素

Python实现JS解密并爬取某音漫客网站Python实现JS解密并爬取某音漫客网站

发现有一个js文件,打开搜索

Python实现JS解密并爬取某音漫客网站

发现这里有一个疑点,这不是html里面的字段吗,那么 “i.getPicUrl(e)” 不就是那个图片的URL的值了吗

在这里下一个断点,走你

Python实现JS解密并爬取某音漫客网站

果然,这个就那个图片URL生成的切入点,现在就是看调用栈,找到这个函数的起点,点击右侧的 ”e.init“,这里有一个setInitData函数,从名字来看,应该就是设置初始数据的地方,在这里下一个断点,进去看看

Python实现JS解密并爬取某音漫客网站

这里有一个this.imgpath,这个应该就是图片的URL值了,点击F10,再单步调式,来到了charcode函数

Python实现JS解密并爬取某音漫客网站

进去看看,这里应该就是加密函数了

Python实现JS解密并爬取某音漫客网站

这里一步步调式,不要着急,来到了这里

Python实现JS解密并爬取某音漫客网站

继续单步调式,在第二次打开这么VM文件的时候,”__cr.imgpath“这个看起来很熟悉呀

Plain Text
"L-:N-M>-A>-A?-M?-I8-J<-M@-@J-@L-M?-IA-JA-M>-@J-@>-M=-@@-@>-M?-@A-@@-:N:8-M@-IN-AL-:N"

打开页面源代码,就在这里啦,不仅仅有图片的URL加密值,还有其他数据,这些都是在后面图片URL拼接需要使用到的

Python实现JS解密并爬取某音漫客网站

现在我们再重新看看那个加密函数,它无非就是遍历那个加密值的每个字符,获取其Unicode值,再与__cr.chapter_id进行相关运算,然后再得到的Unicode数值返回字符

现在我们可以用python仿写这个算法

Python实现JS解密并爬取某音漫客网站

接下就是平常get请求获取必要的数据了,通过正则获取元素,拼接,以下是源码

Python实现JS解密并爬取某音漫客网站 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用asyncio 封装文件读写
Sep 11 Python
Python模拟鼠标点击实现方法(将通过实例自动化模拟在360浏览器中自动搜索python)
Aug 23 Python
centos 安装python3.6环境并配置虚拟环境的详细教程
Feb 22 Python
python3.4.3下逐行读入txt文本并去重的方法
Apr 29 Python
用python处理MS Word的实例讲解
May 08 Python
Django+Ajax+jQuery实现网页动态更新的实例
May 28 Python
Python推导式简单示例【列表推导式、字典推导式与集合推导式】
Dec 04 Python
python绘图模块matplotlib示例详解
Jul 26 Python
Python列表切片常用操作实例解析
Dec 16 Python
TensorFlow 读取CSV数据的实例
Feb 05 Python
python中用ggplot绘制画图实例讲解
Jan 26 Python
python opencv通过按键采集图片源码
May 20 Python
解决Python 写文件报错TypeError的问题
Oct 23 #Python
python 利用Pyinstaller打包Web项目
Oct 23 #Python
python logging模块的使用详解
Oct 23 #Python
Pycharm自动添加文件头注释和函数注释参数的方法
Oct 23 #Python
Python中免验证跳转到内容页的实例代码
Oct 23 #Python
python对 MySQL 数据库进行增删改查的脚本
Oct 22 #Python
Python提取视频中图片的示例(按帧、按秒)
Oct 22 #Python
You might like
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
2007/03/06 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
jquery 防止表单重复提交代码
2010/01/21 Javascript
javascript模块化是什么及其优缺点介绍
2013/09/02 Javascript
jQuery的deferred对象详解
2014/11/12 Javascript
JavaScript中实现键值对应的字典与哈希表结构的示例
2016/06/12 Javascript
JavaScript函数参数的传递方式详解
2017/03/06 Javascript
详解react服务端渲染(同构)的方法
2017/09/21 Javascript
vue实现重置表单信息为空的方法
2018/09/29 Javascript
vue项目搭建以及全家桶的使用详细教程(小结)
2018/12/19 Javascript
bootstrap tooltips在 angularJS中的使用方法
2019/04/10 Javascript
jQuery控制input只能输入数字和两位小数的方法
2019/05/16 jQuery
nodejs中各种加密算法的实现详解
2019/07/11 NodeJs
原生js实现俄罗斯方块
2020/10/20 Javascript
[51:05]DOTA2上海特级锦标赛主赛事日 - 5 败者组决赛Liquid VS EG第一局
2016/03/06 DOTA
[01:04:31]DOTA2-DPC中国联赛定级赛 iG vs Magma BO3第二场 1月8日
2021/03/11 DOTA
Python实现生成简单的Makefile文件代码示例
2015/03/10 Python
Python的Django框架中URLconf相关的一些技巧整理
2015/07/18 Python
python目录与文件名操作例子
2016/08/28 Python
Python实现的异步代理爬虫及代理池
2017/03/17 Python
python 全局变量的import机制介绍
2017/09/07 Python
PyQt5每天必学之组合框
2018/04/20 Python
Windows 64位下python3安装nltk模块
2018/09/19 Python
Django 路由系统URLconf的使用
2018/10/11 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
2020/01/10 Python
屏蔽Django admin界面添加按钮的操作
2020/03/11 Python
python语言time库和datetime库基本使用详解
2020/12/25 Python
Dyson戴森波兰官网:Dyson.pl
2019/08/05 全球购物
农村结婚典礼司仪主持词
2014/03/14 职场文书
市场营销调查计划书
2014/05/02 职场文书
法院信息化建设方案
2014/05/21 职场文书
乡镇组织委员个人整改措施
2014/09/16 职场文书
缅怀先烈主题班会
2015/08/14 职场文书
全家福照片寄语怎么写?
2019/04/02 职场文书
八年级作文之感恩
2019/11/22 职场文书