我去图书馆 对爬虫的防护较弱且更新不及时, 网络上已经开始流传收费的抢座助手; 这些对正常抢座的普通同学不公平;
igotolibrary
无意侵犯任务组织或个人的权益, 仅作学习交流;igotolibrary
已经三次向 我去图书馆 反馈了抢座漏洞的问题, 但没有得到积极的反馈和有效的响应, 反馈截图;igotolibrary
开源, 供大家公平使用; 欢迎有兴趣的同学一起维护更新, 直到修复漏洞为止;- 希望大家不要二次开发后用来提供收费服务.
一个简单的 Python 爬虫,通过 Charles 抓包分析公众号《我去图书馆》、《来选座》的服务通信协议,获取自习室和座位表信息,使用Python
+requests
库模拟预定座位的流程,实现定时预订/实时捡漏自动抢座。
分为两个部分
- mainloop 抢座任务执行部分
- mhandle_content 指令解析验证储存部分
如图:
- 有疑问可提交 Issues
- 有修改可提交到 dev 分支后 Pull requests
- 一些细节: TODOLIST.md;
reserve.py
模块弃用线程, 改用协程, 节约资源, 增大并发任务量;- 尝试换成
pyv8
库执行js; 加快hex_code
字段的计算; - 开发一个极速版
personal_reserve
, 去掉冗余的参数信息只保留核心的步骤, 最大可能的加速抢座; - ...(待补充)
我已将工程部署到了微信 《为了学习》公众号,欢迎测试,服务启动中...