小白求助,百度指数的数据的加密原理

2019-01-28 00:13:09 +08:00
 seanzzz
最近课程项目要用到指数数据,所以在爬取百度指数,现在知道怎么动态渲染获取数据了
但是很好奇,网页返回的 xhr 文件的 data 数据的加密原理,求助大佬
1882 次点击
所在节点    程序员
2 条回复
kiddult
2019-01-28 11:18:27 +08:00
就是个简单映射

返回的结果里面有个 uniqid,用这个去 ptbk 接口换映射表,映射表前一半字符对应后一半字符,把 data 的数据转换一下就行

```python
>>> m = list('xI3Rnp40+iCkHaD,9-3710.6245+8%')
>>> v = 'iCakkkkxpCkapkixIpk+R+x+iRkpCxpCiakIIxInIinpxI4aaRkxai4RRnx+RCk4pxnpCaCRxkakn4pxa4+I4ixRpk4Ipxn+CIInaxiknCCnkxC4ap+axIC+I+axkCankixpppnpRIxpikC+iixan+4kpxp444Rk+xppRp+Cnx+iiiaRxpp4CnRIxpkpiRRnxiRCn++4xIR4pkkxpCRR+CRxpnkni+n'
>>> d = dict(zip(m[:len(m)//2:], m[len(m)//2::]))
>>> ''.join(map(lambda x: d[x], v))
'2485555,1458152,915636,623514,1428599,979271,908835,820337,634501,714843,585701,806902,315091,7649978,2574475,408168,946968,548752,1117139,1254622,876051,1000356,1131647,622283,1104739,1512337,2347660,930155,1433643,1757267'
```
kiddult
2019-01-28 11:20:49 +08:00
顺便吐槽一下,难怪前端喜欢 chrome,ff 调试的时候居然不能根据美化之后的 js 设置断点,然后还有那个坑爹的网络页面不能调节文件名栏的宽度

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/531103

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX