-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
获取训练样本的思路 #3
Comments
Review 评论数据分析获取原始的数据通过使用 Chrome 监听返回的文件,揪出了评论的 json 文件
只要改改 id 就可以直接获取,
揪出来了,原来不是加密,直接利用数据里的 id 就能获取评论了。果然方便~ 只要将下面链接的 id 和上面链接返回的 json id 相对应就行了
获取对应位置的语句这个就只能下载项目文件,再找文件里对应位置的语句。用 python 处理文件,这一步很容易完成。只是这样爬取样本花的时间估计会比预计的长 |
其它的一些数据链接下面的链接可以取出的数据:review 和用户的信息,完成时间和 assign 时间,还有项目语言,项目文件
|
服务器负载的考虑同一 ip 同一账号单位时间内对服务器请求数次过多,必然会被禁掉。单独开个账号,时间控制在 5 分钟左右请求一份 Review。这样大概一天 300 份
|
解密 base64
因为好奇,认为 review 里面不可能没有代码内容的。为了找出内容,先对内容有很大概率存储地方检查一遍,先检查 content.json 里面的。就凭它的名字叫 contents 。。。 发现里面有个键值并不了解的,就是 blob。打开会看到一群乱码 然后稍微了解了上面链接的 blob 键值。查了一番文件的编码方式。试了常用的 encode 方式对乱码进行 decode。发现原来文件内容是通过 base64 的方式进行编码, 解密如下: 有了这个,就不用 python 对项目文件解释了。直接对 Blod 用 base64 解密就行了 参考链接 |
最近改版,普通账户无法看非自己的 Review 了,错失良机了,以后有机会有想法再研究 😢 |
如上:每个 review 后面的 id ,我们都可以更改从而获得其它的 review,而且无需权限就可以阅读。只要穷举后面的 id 就能获取大量的 review 了
利用样本:
The text was updated successfully, but these errors were encountered: