最近公司項目有個需求,要求抓取快遞單號快遞信息,比如簽收地點、簽收日期等。該項目對應的快遞查詢網站是一個國外的網站,他們有專門的快遞平臺可以用于查詢。該平臺提供了快遞接口進行查詢,但需要付費。同時也提供了免費的查詢窗口,一次最多可以查詢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最大化的模擬了人的鼠標點擊和鍵盤操作,讓對方的網站感覺是一個人在操作,而不是什么程序,這樣被封殺的概率會降低。