那天摸鱼刷论坛看到个新补丁
就手贱点进那个标着“最新数据”的帖子瞄了眼,结果发现一堆老哥在吼“资源挂了”“求更新”。有时候轴劲上来了拦不住,当场拍桌子:行,你们搞不到,老子自己整!
打开chrome就开始瞎撞
先输了个官网地址,结果首页翻烂了都没看见数据包影子。切到资源区,那些帖子点进去不是链接过期就是评论里骂娘。气得我猛捶键盘,差点把奶茶泼屏幕上。
突然想起个野路子
去年存过个破论坛的网址,专门扒各种游戏资源的。摸过去搜winning11cn,居然真冒出来三五个标题带“2024新数据”的帖子。结果更来气:全部要积分下载!我这种万年潜水党哪儿来的积分?
- 试了回帖“感谢楼主”——被秒删
- 试了私信求资源——已读不回
- 试了充钱买积分——发现最低充值50块
正骂骂咧咧准备关网页,眼角突然瞟到某个帖子底下有条灰色小字:“用爬虫的自己去git找轮子”。我叼着半块饼干愣住:这都行?
开搞python脚本
翻出几年前学爬虫的旧代码开始魔改:
- 先拿浏览器开发者工具蹲在官网数据页面
- F5刷新十几次终于抓到个像样的XHR请求
- 把返回的json数据丢进json格式化工具扒拉
- 看见player_list字段时差点在工位上嚎出来
结果跑脚本时报错403!原来是官网加了贼坑爹的反爬机制:必须带某个动态token才能请求。我又花半小时研究怎么模拟浏览器cookie,发现要先用selenium打开网页偷token值...
最终版操作流
- Step1 启动无头浏览器加载官网数据页
- Step2 从页面源码里抠出token塞进请求头
- Step3 伪造手机UA访问json接口
- Step4 把球员数据按中文名重排序
- Step5 自动转存到本地excel表
折腾到凌晨两点终于看到满屏球员数值刷刷地往表格里灌,当时激动得抓起猫撸了十分钟。第二天睡醒就把脚本挂到云服务器定时跑,现在每周三自动收菜美滋滋。
血泪警告
别学我开无头浏览器硬刚!上周发现官网升级验证码了,现在要拼图滑块。目前改方案用抓包工具直接劫手机端数据,迟早药丸。建议大家见好就收,且用且珍惜!