黃玉萍,鄭夢(mèng)飛,謝 翔
(中國(guó)郵政集團(tuán)有限公司郵政研究中心 郵政智能裝備工程技術(shù)研究中心,北京 100096)
快遞運(yùn)單是快遞包裹的唯一標(biāo)識(shí)代碼,通過單號(hào)查詢可以實(shí)時(shí)跟蹤快件的物流信息。在互聯(lián)網(wǎng)高度發(fā)達(dá)的今天,利用網(wǎng)絡(luò)爬蟲可以獲得大量的快遞運(yùn)單的物流信息,基于該信息可對(duì)相應(yīng)快遞包裹業(yè)務(wù)進(jìn)行精細(xì)分析,如:時(shí)限分析、營(yíng)業(yè)網(wǎng)點(diǎn)位置分析、網(wǎng)絡(luò)路由分析等[1]。
POI(Point Of Information)又稱為興趣點(diǎn),數(shù)據(jù)源于地圖導(dǎo)航服務(wù),具有空間坐標(biāo)和屬性信息,是一種表征真實(shí)地理空間實(shí)體的數(shù)據(jù)集,具有精度高、覆蓋廣、更新快、易獲取的數(shù)據(jù)特點(diǎn)。每一個(gè)POI 點(diǎn)在空間上都可以代表一個(gè)功能要素,可以是一棟房子、一個(gè)商鋪、一個(gè)郵筒、一個(gè)公交站等。近幾年隨著互聯(lián)網(wǎng)上POI數(shù)據(jù)的開放使用,眾多學(xué)者開始探索POI數(shù)據(jù)在相關(guān)領(lǐng)域的應(yīng)用,如郭昭以東莞市POI數(shù)據(jù)為基礎(chǔ),研究了基于POI數(shù)據(jù)的城市功能空間識(shí)別及中心城區(qū)功能復(fù)合測(cè)算方法[2]。中國(guó)測(cè)繪科學(xué)研究院曹元暉以POI數(shù)據(jù)為主要信息源,為建筑物內(nèi)部及周邊一定區(qū)域范圍內(nèi)的POI賦予反距離權(quán)重,通過計(jì)算不同類型POI 的加權(quán)頻數(shù)密度比例來識(shí)別建筑物功能類型[3]。廣州市交通規(guī)劃研究院的宋程基于POI、收集信令數(shù)據(jù)、互聯(lián)網(wǎng)位置數(shù)據(jù)等多源數(shù)據(jù)進(jìn)行了城市活力區(qū)和中心城區(qū)邊界識(shí)別研究[4]。
進(jìn)入二十一世紀(jì),中國(guó)快遞繼續(xù)保持高速增長(zhǎng),市場(chǎng)規(guī)模日益壯大,市場(chǎng)上的各個(gè)競(jìng)爭(zhēng)主體——快遞企業(yè),它們對(duì)市場(chǎng)的爭(zhēng)奪日趨白熱化。因此,各個(gè)企業(yè)如何在競(jìng)爭(zhēng)白熱化的市場(chǎng)中爭(zhēng)取新客戶、留住客戶,對(duì)企業(yè)的生存與發(fā)展具有重大的意義[5-7]。
本文研究了通過網(wǎng)絡(luò)爬蟲采集快遞運(yùn)單,從運(yùn)單信息中抽取快遞網(wǎng)點(diǎn)周邊POI信息,從而發(fā)現(xiàn)潛在快遞客戶資源的方法。并以某快遞公司為例,研究了其在北京地區(qū)的客戶資源分布狀況。本文的研究結(jié)果可以為其市場(chǎng)開拓提供輔助支撐。
本研究所采用的數(shù)據(jù)來源于通過快遞單號(hào)查詢獲得的快遞包裹軌跡信息,“快遞100”網(wǎng)站可提供不同快遞公司快遞單號(hào)的實(shí)時(shí)查詢,因此,本研究選擇了“快遞100”網(wǎng)站作為快遞運(yùn)單數(shù)據(jù)的來源。本文的數(shù)據(jù)獲取對(duì)象為某快遞公司在北京地區(qū)的快遞運(yùn)單數(shù)據(jù),數(shù)據(jù)采集時(shí)段從2019 年12 月至2020 年5月,采集內(nèi)容包括:?jiǎn)翁?hào)信息、時(shí)間信息、業(yè)務(wù)內(nèi)容、地點(diǎn)信息,累積采集2 000萬條運(yùn)單數(shù)據(jù)。
從互聯(lián)網(wǎng)上采集大量的運(yùn)單數(shù)據(jù),需要使用網(wǎng)絡(luò)爬蟲來實(shí)現(xiàn)[8-10]。網(wǎng)絡(luò)爬蟲是一個(gè)可以實(shí)現(xiàn)定向抓取互聯(lián)網(wǎng)上特定頁面內(nèi)容的程序,從技術(shù)層面來說就是通過程序模擬瀏覽器請(qǐng)求站點(diǎn)的行為,把站點(diǎn)返回的HTML 代碼、JSON 數(shù)據(jù)、圖片、視頻等爬到本地,進(jìn)而提取自己需要的數(shù)據(jù),存放起來使用。
網(wǎng)絡(luò)爬蟲工作首先明確要爬取的網(wǎng)站和數(shù)據(jù),選擇合適的方法來抓取數(shù)據(jù),再將解析下載下來的網(wǎng)頁和價(jià)值數(shù)據(jù)持久化,保存到數(shù)據(jù)庫(kù)中。網(wǎng)絡(luò)爬蟲的基本工作流程如圖1所示。
圖1 網(wǎng)絡(luò)爬蟲工作流程圖
在抓取運(yùn)單數(shù)據(jù)時(shí),需要提供運(yùn)單號(hào),在本研究中,以一個(gè)真實(shí)的快遞運(yùn)單號(hào)為種子單號(hào),按照一定的算法生成單號(hào)隊(duì)列,按隊(duì)列中的單號(hào)信息查詢運(yùn)單數(shù)據(jù),生成運(yùn)單數(shù)據(jù)表。其中,編程語言為Python 3,在PyCharm 集成環(huán)境下開發(fā),數(shù)據(jù)庫(kù)為Mysql 8.0+。接口測(cè)試工具為Fiddler,數(shù)據(jù)通過json進(jìn)行交換。
圖2為某快遞公司快遞產(chǎn)品的物流軌跡,我們將包含快遞單號(hào),物流信息及時(shí)間的數(shù)據(jù)稱為該快遞的運(yùn)單信息(簡(jiǎn)稱運(yùn)單),基于運(yùn)單可以了解每一件快遞產(chǎn)品的物流軌跡,通過對(duì)物流軌跡的分析,可以推測(cè)快遞產(chǎn)品的收寄地及相應(yīng)的客戶分部狀況。
圖2 快遞運(yùn)單
為了提高數(shù)據(jù)的存儲(chǔ)與檢索效率,建立運(yùn)單表,包含運(yùn)單號(hào)、作業(yè)時(shí)間、業(yè)務(wù)信息、作業(yè)地點(diǎn),見表1。
表1 運(yùn)單表結(jié)構(gòu)
2.1.1 數(shù)據(jù)去重。如前文所述,本研究中運(yùn)單號(hào)是基于“母單號(hào)”自動(dòng)生成的,由于“母單號(hào)”不唯一,因而生成的采集單號(hào)序列間存在單號(hào)重復(fù)的問題,導(dǎo)致運(yùn)單表中會(huì)存在一定數(shù)量的重復(fù)記錄。為了保證數(shù)據(jù)庫(kù)中記錄的唯一性,在進(jìn)行數(shù)據(jù)分析之前,需要結(jié)合單號(hào)、時(shí)間組合條件對(duì)運(yùn)單表進(jìn)行去重處理。
2.1.2 異常值處理。本研究進(jìn)行了為期6個(gè)月的數(shù)據(jù)準(zhǔn)備,采集了某快遞公司2019年12月至2020年6月間的2000萬運(yùn)單數(shù)據(jù)。由于數(shù)據(jù)采集是基于對(duì)運(yùn)單號(hào)的“試錯(cuò)”,即如果該運(yùn)單號(hào)真實(shí)存在就返回信息,不存在就放棄,重新采集單號(hào)隊(duì)列中的下一運(yùn)單,所以采集的數(shù)據(jù)存在采樣不連續(xù)的特點(diǎn),如圖3所示。
圖3 采樣數(shù)據(jù)日分布圖
為了避免因數(shù)據(jù)不連續(xù)帶來的統(tǒng)計(jì)失真,從整體數(shù)據(jù)集中選擇2019年12月、2020年3月、2020年4月、2020年5月的數(shù)據(jù)作為分析樣本。
快遞公司的服務(wù)對(duì)象是其營(yíng)業(yè)網(wǎng)點(diǎn)周邊的商超、住宅小區(qū)、辦公樓,即其潛在客戶分布在營(yíng)業(yè)網(wǎng)點(diǎn)的周邊。要了挖掘快遞公司的客戶群體,需要先確定其末端營(yíng)業(yè)網(wǎng)點(diǎn)的名稱和地址。從運(yùn)單表中按“citi”+“info=攬收”條件進(jìn)行查詢,可獲得該快遞公司在北京地區(qū)的營(yíng)業(yè)網(wǎng)點(diǎn)名稱。查詢代碼如下:
在高德地圖開放平臺(tái)對(duì)網(wǎng)點(diǎn)名稱進(jìn)行查詢,可獲得網(wǎng)點(diǎn)的結(jié)構(gòu)化地址,如圖4所示。
圖4 網(wǎng)點(diǎn)地址
客戶資源的價(jià)值,可以通過與其有業(yè)務(wù)往來的網(wǎng)點(diǎn)業(yè)務(wù)量大小來衡量。為了發(fā)掘有價(jià)值的客戶資源,需要對(duì)網(wǎng)點(diǎn)進(jìn)行分類,將同一統(tǒng)計(jì)時(shí)內(nèi)業(yè)務(wù)量大的網(wǎng)點(diǎn)定義為優(yōu)質(zhì)網(wǎng)點(diǎn)。優(yōu)質(zhì)網(wǎng)點(diǎn)客戶資源豐富,具有客戶資源挖掘的意義。通過對(duì)所采集數(shù)據(jù)的分析,得出同一時(shí)間段內(nèi)該快遞公司90%以上的業(yè)務(wù)量集中在42個(gè)營(yíng)業(yè)網(wǎng)點(diǎn)(如圖5所示),因此,將這42個(gè)營(yíng)業(yè)網(wǎng)點(diǎn)作為客戶資源挖掘的目標(biāo),對(duì)其進(jìn)行客戶資源的挖掘。
地理編碼,又稱為地址匹配,是從已知的結(jié)構(gòu)化地址描述到對(duì)應(yīng)的經(jīng)緯度坐標(biāo)的轉(zhuǎn)換過程。根據(jù)給定的地理名稱和查詢城市,返回地理編碼的結(jié)果列表。顯示效果如圖6所示。
高德地圖提供千萬級(jí)別的POI數(shù)據(jù),所有數(shù)據(jù)均按三級(jí)分類,層次清晰,精度較高。POI 數(shù)據(jù)的標(biāo)簽基本涵蓋了所有的設(shè)施類型,見表2。
圖5 網(wǎng)點(diǎn)同一時(shí)期業(yè)務(wù)量占比
圖6 地理編碼圖
表2 POI類別標(biāo)簽
利用POI 數(shù)據(jù),可以實(shí)現(xiàn)客戶資源挖掘,具體方法如下:(1)利用高德地圖開放平臺(tái),獲得網(wǎng)點(diǎn)的地址編碼。(2)以網(wǎng)點(diǎn)為核心,搜尋一定半徑范圍內(nèi)的POI 信息。(3)借助POI 對(duì)網(wǎng)點(diǎn)周邊地理信息進(jìn)行分類,識(shí)別客戶資源。
高德開放平臺(tái)提供多種查詢POI信息的功能,其中包括關(guān)鍵字搜索、周邊搜索、多邊形搜索、ID 查詢四種篩選機(jī)制。本文所使用的POI 數(shù)據(jù)基于高德API 開放接口,采取周邊搜索中的關(guān)鍵字搜索和POI類型搜索方法,運(yùn)用Python 編程語言編寫網(wǎng)絡(luò)爬取工具獲取數(shù)據(jù)并輸出。實(shí)現(xiàn)方法如下:
http://restapi.amap.com/v3/place/around?key=您的key&location=116.409692,39.97118&keywords= 北京&types=011100&radius=2000&offset=20&page=1&ex -tensions=all&output=json
說明:location(116.409692,39.97118)是需要查詢的中心點(diǎn),keywords(北京)指定搜索城市為“北京”,types(011100)為搜索返回的POI 數(shù)據(jù)類型,radius(2000)指定搜索半徑為2km,extensions(all)為返回的數(shù)據(jù)內(nèi)容,參數(shù)output(json)用于指定返回?cái)?shù)據(jù)的格式,key是用戶請(qǐng)求數(shù)據(jù)的身份標(biāo)識(shí)。
返回的數(shù)據(jù)為
說明:POI 點(diǎn)的信息都在pois 中。name 表示名稱,type 表示的類型,address 指出地址,location 表示具體的經(jīng)緯度,adname 表示所屬行政區(qū)域(區(qū)縣級(jí)別),business_area表示所在商圈。
從互聯(lián)網(wǎng)上采集某快遞公司近2 000 萬條運(yùn)單信息,對(duì)其在北京地區(qū)的網(wǎng)點(diǎn)布局及客戶資源情況進(jìn)行分析挖掘,研究結(jié)果如下:
采用前述對(duì)運(yùn)單數(shù)據(jù)的分析方法,得到該快遞公司在北京地區(qū)共有184個(gè)營(yíng)業(yè)網(wǎng)點(diǎn),在北京各個(gè)區(qū)的網(wǎng)點(diǎn)數(shù)據(jù)分布見表3。
表3 北京各區(qū)網(wǎng)點(diǎn)數(shù)量
利用高德地圖可獲得各個(gè)網(wǎng)點(diǎn)的地址編碼。圖7 為在高德地圖上標(biāo)記的該公司在北京朝陽區(qū)營(yíng)業(yè)網(wǎng)點(diǎn)的位置信息。
圖7 朝陽區(qū)營(yíng)業(yè)網(wǎng)網(wǎng)點(diǎn)
利用所描述的方法,對(duì)樣本數(shù)據(jù)進(jìn)行分析后發(fā)現(xiàn),該公司在北京地區(qū)的90%的業(yè)務(wù)量集中在42 個(gè)營(yíng)業(yè)網(wǎng)點(diǎn),因此把這42 營(yíng)業(yè)網(wǎng)點(diǎn)作為客戶資源挖掘的目標(biāo)。目標(biāo)網(wǎng)點(diǎn)的分布情況見表4。
表4 北京各區(qū)目標(biāo)網(wǎng)點(diǎn)數(shù)量
其中朝陽區(qū)的目標(biāo)網(wǎng)點(diǎn)分布情況如圖8所示。
利用目標(biāo)網(wǎng)點(diǎn)地址編碼,可從高德地圖開放平臺(tái)獲得網(wǎng)點(diǎn)周邊POI 數(shù)據(jù),對(duì)網(wǎng)點(diǎn)周邊POI 進(jìn)行分類,進(jìn)行客戶資源挖掘。圖9為對(duì)網(wǎng)點(diǎn)(116.409 692,39.971 18)周邊2km 范圍內(nèi)的POI 查詢結(jié)果,基于該結(jié)果可獲取客戶名稱和詳細(xì)地址,為市場(chǎng)推廣提供輔助支撐。
圖8 朝陽區(qū)目標(biāo)網(wǎng)點(diǎn)分布圖
圖9 POI查詢結(jié)果示例
(1)通過對(duì)快遞運(yùn)單的分析,可以獲取快遞公司的營(yíng)業(yè)網(wǎng)點(diǎn)的名稱,利用高德地圖開放平臺(tái)可以查詢營(yíng)業(yè)網(wǎng)點(diǎn)地址編碼,進(jìn)而可以獲得網(wǎng)點(diǎn)周邊一定范圍內(nèi)的POI 數(shù)據(jù),對(duì)POI 數(shù)據(jù)進(jìn)行分類,可以發(fā)現(xiàn)潛在的快遞客戶。
(2)用來分析的運(yùn)單數(shù)據(jù)是通過互聯(lián)網(wǎng)采集的,因數(shù)據(jù)采集的算法為“基于運(yùn)單號(hào)試錯(cuò)”的方法,因此,采集的數(shù)據(jù)可能存在重復(fù)或數(shù)據(jù)分布不均勻的情況,在進(jìn)行數(shù)據(jù)分析前必須對(duì)網(wǎng)絡(luò)采集數(shù)據(jù)進(jìn)行去重和去除異常值處理,避免由于所采集的數(shù)據(jù)樣本存在偏差導(dǎo)致分析結(jié)果出現(xiàn)偏差。
(3)本文研究的客戶發(fā)現(xiàn)方法適用于攬收商務(wù)件、經(jīng)濟(jì)件等業(yè)務(wù)場(chǎng)景,針對(duì)電商件客戶的挖掘不在本方法研究范圍之內(nèi)。