cj1128.github.io icon indicating copy to clipboard operation
cj1128.github.io copied to clipboard

斗鱼关注人数爬取 ── 字体反爬的攻与防

Open cj1128 opened this issue 5 years ago • 19 comments

https://cjting.me/2020/07/01/douyu-crawler-and-font-anti-crawling/

斗鱼关注人数爬取 ── 字体反爬的攻与防

cj1128 avatar Jul 02 '20 17:07 cj1128

字体是JS传过来的,这个反爬虫技术比一般网站高多了。博主这个解决方案很工程化,学习了。 我也做了一个字体映射,专门用来把弯引号映射为直角引号,不过JS 貌似处理字体就没 Python 这么方便,加之中文字体坑比较多,用的是百度的 FontEditor 可视化界面。《标点》

Lionad-Morotar avatar Jul 02 '20 17:07 Lionad-Morotar

开多个无头浏览器,屏蔽媒体文件如音视频的请求,只请求文档、样式和JS会不会速度快点儿

Lionad-Morotar avatar Jul 02 '20 18:07 Lionad-Morotar

这个有点厉害了!

davidfeng88 avatar Jul 03 '20 01:07 davidfeng88

@Lionad-Morotar 字体是JS传过来的,这个反爬虫技术比一般网站高多了。博主这个解决方案很工程化,学习了。 我也做了一个字体映射,专门用来把弯引号映射为直角引号,不过JS 貌似处理字体就没 Python 这么方便,加之中文字体坑比较多,用的是百度的 FontEditor 可视化界面。《标点》

点进去一看,前端大神的博客都这么好看……

davidfeng88 avatar Jul 03 '20 01:07 davidfeng88

@Lionad-Morotar 开多个无头浏览器,屏蔽媒体文件如音视频的请求,只请求文档、样式和JS会不会速度快点儿

理论上应该会快一点,但是我觉得意义不大。

首先,我估计媒体资源不是主要拖慢加载的因素,主要还是各种 JS 和 XHR。我刚才统计了一下,斗鱼直播间页面,101 个 XHR,417 个 JS,96 个 CSS。这里我做的是全量加载,第二次因为缓存肯定会少一些,但是复杂的 JS 逻辑还是要运行的。

其次,屏蔽资源的话有可能会导致站点加载失败,某个逻辑可能依赖资源的成功回调。

如果采用 Headless Browser,基本上就不考虑性能了,当然,如果有空你可以测试一下,我挺好奇结果会怎样~

cj1128 avatar Jul 03 '20 04:07 cj1128

我直接点进去看span里的数是真实的啊。。。

smartPiz avatar Jul 07 '20 10:07 smartPiz

诶 为什么不直接用 ocr 去直接识别网站的 关注人数呢

hubingliang avatar Jul 10 '20 02:07 hubingliang

打断点分析那里很骚啊,拿到了vk的签名算法

sRect avatar Jul 10 '20 03:07 sRect

还可以这么玩

Sinosaurus avatar Jul 10 '20 09:07 Sinosaurus

斗鱼很厉害,博主也很厉害

haoflynet avatar Jul 10 '20 09:07 haoflynet

厉害,以前遇到这种加密的直接就放弃了。Mark一下。

顺便提一下,斗鱼有开放平台提供接口,很久前用过获取关注人数啊什么的,不知道现在支不支持获取关注数

zerohowieli avatar Jul 10 '20 14:07 zerohowieli

这思路,我只想说,干的漂亮 👏

Rainsho avatar Jul 12 '20 12:07 Rainsho

大众点评很早就这么玩了

xiongbao avatar Jul 13 '20 08:07 xiongbao

利用 Chrome扩展插件也是一条新思路。 利用“广告屏蔽插件”去除所有不需要的请求。把需要的部分截图 OCR识别。 这是一个思路,实现方法上依赖于 Selenium ,屏蔽请求后的效率应该不会太差。主要是不用再对算法。

yaodwwy avatar Jul 16 '20 09:07 yaodwwy

@hubingliang 诶 为什么不直接用 ocr 去直接识别网站的 关注人数呢 因为那样显得很low

chenxs1427 avatar Oct 20 '20 02:10 chenxs1427

这思路,清晰!

afetmin avatar Nov 03 '20 02:11 afetmin

厉害

471448446 avatar Nov 15 '20 13:11 471448446

刷新了对爬虫和反爬的认知,赞!

isaced avatar Dec 24 '20 14:12 isaced

厉害

mml237 avatar Nov 23 '23 02:11 mml237