系统性爬虫专题
- http
- https
- wss(抖音直播弹幕): 实时更新的数据
- 快捷键
- ctrl + F # 搜索
- ctrl + Shift + F # 搜索
- 断点
- 断点里面,还可以再打小断点
- 调试
- 当打上断点以后,可以在Console控制台写入要调试的函数,可以交互结果
- 复制代码的技巧
- 把代码"折叠"起来,然后复制即可
- func.toString() # 控制台输出这个,然后打印出来
- targetString = "xxxxyyyyzzz..." // 结尾处有省略号,解析这段字符串的时候,会报错
- targetString = 'xxxxyyyyzzz...'' // 结尾处多出了引号,解析这段字符串的时候,会报错
- 复制请求路径,然后打上xhr断点
- 进入断点以后,搜索 JSON.parse()查看是否有json转化的逻辑
- 原理就是: 前后端交互数据的时候,前端必须把后端传过来的数据,转换一下格式,所以解密的逻辑很可能就藏在这里
补环境
- npm install jsdom
const { JSDOM } = require('jsdom');
const dom = new JSDOM('<!DOCTYPE html><p></p>>',{url:'http://www.baidu.com'});
// 运行代码的时候,报错哪个,就去浏览器Console台输出一下,然后补过来
window = dom.window
ducument = window.document
navigator = window.navigator;
...
// 调用函数内部的方式,使用window.xxx去保存,从而导出函数的内部方法
window.ddd = innerFunctionObj;
- 跟栈: 找到 Promise.then
- 找它下面最近的那个,不要去找上面的(上面的已经执行过了)