使用影刀RPA实现快递信息抓取
最近公司项目有个需求,要求抓取快递单号快递信息,比如签收地点、签收日期等。该项目对应的快递查询网站是一个国外的网站,他们有专门的快递平台可以用于查询。该平台提供了快递接口进行查询,但需要付费。同时也提供了免费的查询窗口,一次最多可以查询25个快递单号。我们的快递单号比较多,有几千个,这时候RPA工具就派上用场啦。
我们的任务很简单,就是根据Excel清单里面提供的快递单号,在对应位置的单元格写入获取到的签收信息即可。涉及到的技术点如下:
读取Excel
这个点需要说明一下,影刀RPA提供了数据表格以及Excel表格。这两个功能的区别就在于使用Excel表格必须要安装Office,否则无法使用其功能。而数据表格更通用,更像是一个内存型的数据表格,不需要安装Office。
模拟批量提交查询快递单号信息
因为我是25个快递单号一组提交查询,抓取到信息保存,再提交25个新的快递单号查询,这样反复循环。网站格式上面要求每一个快递单号一行,最多25行。如图所示,最后一行的时候多一个换行,可以加个按键BackSpace,去除最后一行的换行,然后提交查询。
抓取带分页的快递信息
有两点需要注意:
- 首先要选择多页,此外要指定抓取的页数,因为我是25个一批,页面每页显示5个快递信息,那么就是5页。
- 我勾选了保存至数据表格,那么我也可以操作这个数据表格写入Excel。
写入Excel
抓取数据到数据表格后,就可以操作数据表格,写入Excel。
当然上图中,我也是25个一组获取到快递信息后,就及时写入Excel。这样保证如果中途中断,之前抓取过的信息仍然会保留。
上面用到的pitch2是一个插入Python代码段。影刀RPA就是这个好处,可以直接使用Python的能力嵌入到影刀中,开发非常方便。
总结
- 其实我之前是想通过爬虫程序去完成的,但是自从用了RPA工具就发现RPA做这类数据抓取的应用,效率更高。
- RPA跟爬虫的区别就在于,RPA最大化的模拟了人的鼠标点击和键盘操作,让对方的网站感觉是一个人在操作,而不是什么程序,这样被封杀的概率会降低。