这是一篇含金量很高的干货文章,笔者将手把手带领各位一步一步地实现爬取国家税务总局全国增值税发票查验平台(以下简称“查验平台”)。这个想法诞生在19年初,当时在做一款通过扫描二维码就可以查验发票的小程序。 当时由于笔者学艺尚浅,没办法模拟请求爬取查验平台,所以最终采用的技术方案是通过web自动化测试工具selenium控制浏览器去模拟查验步骤,即使这样,开发过程也是困难重重,不过最后笔者和伙伴们成功实现了整套流程,最后开发出的产品口袋发票夺得了包括2019微信小程序开发大赛赛区三等奖在内的多个奖项。 但是产品是无法真正上线的,因为通过selenium爬虫的方式实在是太消耗性能了,测试结果表明:百度云4核8G的服务器职能同时服务10人以内。 笔者一直不甘心,暗自下定决心:一定要实现模拟请求爬取。 那么闲话少说,我们开始吧。
第一步肯定是分析查验平台整体的逻辑,所以我们首先来真实地查验一张发票。 这里笔者使用的是Chrome 76.0.3809.132,是本文发布时的最新版本。