-
Notifications
You must be signed in to change notification settings - Fork 1
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
有关抓取桃叭订单的事项 #1
Comments
你是桃叭后台程序员吗,那个加密解密如果是自己破译出来的话..真的🐂 |
但是你的代码风格我不喜欢所以只参考你的encode,decode,写完了会加ref的(:D |
不是,用Chrome开发者工具从前端的js抓出来的 |
tql, 那个加盐的密钥是咋抓出来的啊,真的好好奇我只能推测出来zlib和base64Orz |
以及感觉你的第一开发语言应该不是python吧🤪有些不pythonic啦!(猜测或许是...go?scala?还是Java?23333🤣 总之那个加盐混淆的密钥我是真的看傻了! |
从js用开发者工具调试出来的,其实我是写C++搞ACM的,Python连书都没看过,纯属应援会有需要硬上的。
可以确定这个f函数就是核心的加密,在上面找到的return那里设置一个断点,然后发现f函数的参数就是明文,return的结果就是密文。接下来就是体力活了,单步执行f函数,看看每一步都是做什么的。
在函数的入口设置一个断点,然后分步执行,然后看到t是一个数组,正好数组的每一个值按顺序都是明文的ascii码,u是压缩函数,u的代码里面有try-catch块,catch里面的信息有zlib,所以猜测是zlib压缩,然后是d函数,调进去看了一下d函数就是间隔异或的功能,字符串o是硬编码写在js文件里的,就是"%#54$^%&SDF^A*52#@7"。最后就是把结果转成base64,在前面加上长度头。 |
全部订单信息要拿应援会的账号登录以后才能看见,登录以后点活动经费进去,有详细名单下载,不过是xlsx格式的,但是还有一个退款入口,从退款入口可以看见一个项目的全部订单,只不过看起来是乱序的,所以每次更新必须得全部爬一遍才行。 |
哇这个厉害了,学到了。我用的Request Payload就已经是加密过的然后有些迷茫,之后根据请求头推断应该是先zlib之后base64加密,加盐不像你那样调用确实看不出来Orz 👍🏾👍🏾👍🏾tql |
这个位置我们对爬去项目订单处理的方式可能不同,我就直接使用的join那个请求,存了前一次爬取的response['data']之后和这次爬去的对比,爬到的订单是按照排名的顺序爬下来的,不过确实每次更新都要爬一遍,这个没有类似于摩点和小经费的评论区播报最新一次的集资那种就有点麻烦Orz |
这个github账号是你的大号吗👀大号的话我就点关注了! |
是大号。 |
看到你用了我的抓取桃叭数据的代码,提示一下未登录的情况下只能抓取订单模型,登录了以后可以抓取全部订单数据,不过好像是乱序的。
新的代码我写在了https://github.com/MskAdr/433QQBot/blob/master/Taoba.py 这里,用了SQLAchemy做数据库的处理。
这个是从网页版订单退款的列表里面抓取的,要先登录才行。
The text was updated successfully, but these errors were encountered: