网页抓取实例之Blue express物流信息抓取
提起如何查询物流信息,大家都会想到各个方法。如果查询数量较少,我们可以通过到各个快递官网中查找。如果需要批量查,到表格中写Excel函数库的快递公式即可,无论国内快递还是国际快递,都能轻松搞定。今天小编就教给大家第三种方法,通过网页抓取的方法实现物流信息的获取。
本文通过一个国外物流网站的抓取案例,向大家介绍具体的抓取步骤,先给大家看下抓取的最终结果:
首先,我们还是和往常一样,寻找数据源。我们打开查询物流信息的网址,右键检查或者按F12打开开发者工具。然后在网页中搜索快递单号的地方,输入一个快递单号进行搜索。通过这一步,我们可以在开发者工具里的NetWork中截获刚才发送的请求。
通常情况下,我们找到数据源,把它的网址链接复制下来就行,但是本案例中的网址不能直接打开,需要在网址后端添加一个apikey。我们从下图的地方可以获取到apikey。
有了源数据的网址,我们就可以到表格中写公式了。首先通过公式=GetJsonSource()将源数据提取到表格,由于每个单号对应到源数据中是不同的网址,所以这里我们将网址做了简单的拼接改造(由网址前部分+单号+apikey)
接着我们来提取具体的属性值,由于源数据为JSON格式,我们这里使用=GetJsonProp erty()公式。
如图,B5为源数据所在的单元格,root.0.date为属性名,可以将NetWork里的JSON数据与网页显示的实际数据对比,总结出属性名对应的具体值。
写好公式后,我们单击回车,即可获取到具体的数据,至此,我们的网页抓取任务就算完成了。之后我们填入单号,并将公式写好,数据就轻松的被抓取出来了。至于表格的美化、数据的后续处理,因人而异,小编在这就不一一讲解了。
通过网页抓取的方法查快递,虽然有局限性且有一定的难度,但如果真的能用好,在效率及使用价值方面,往往会给我们意想不到的惊喜。