您好,登錄后才能下訂單哦!
本篇內容介紹了“Python查詢快遞的方法是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
首先,要考慮數據來源。這個可以用快遞100的數據,打開快遞100官網就可以輸入單號查詢快遞信息。
當然,點一下查詢按鈕,會發送很多請求到服務器,請求快遞信息。我們需要分析一下哪個請求鏈接是有用的。抓包分析可以用fiddler4,這里我就不寫這個過程了。
經測試,得到請求鏈接是 http://www.kuaidi100.com/query?type=xxx&postid=xxx 。其中需要填寫type和postid兩個參數,分別是快遞公司代碼和快遞單號。請求這個鏈接可以得到json數據。大概結構如下:
{ "message" : "ok", "nu" : "單號", "com" : "快遞公司代碼", "data":[ { "time":"2015-12-27 13:24:34", "context":"快遞信息1", "ftime":"2015-12-27 13:24:34" }, { "time":"2015-12-27 13:24:34", "context":"快遞信息2", "ftime":"2015-12-27 13:24:34" } ]}
這個json數據結構還是一目了然的那我們就可以動手了,源碼如下:
# -*- coding: UTF-8 -*-
# 特別聲明,此源碼僅參考研究使用。未經允許,請勿用于商業用途
# By Haddy Yang, 2016-03-02
import urllib
import json
def getExpress(company,code):
'''funcation: Get Express Infomation
2 args
company: the express company code
code: the express bill code
'''
url='http://www.kuaidi100.com/query?type=%s&postid=%s' % (company,code)
page=urllib.urlopen(url) #打開鏈接,請求快遞數據
return page.read().decode('utf8')
def showResult(jsonStr):
'''Show the result'''
jsonObj = json.loads(jsonStr)
print u'當前狀態:', jsonObj.get('message'),'\n'
status=jsonObj.get('status') #獲取狀態代碼(200是正常)
if status=='200':
for x in jsonObj.get('data'):
print '%s %s' % (x.get('time'), x.get('context'))
#可以用下面代碼遍歷出全面鍵值
#for key,value in x.items():
# print key,value
if __name__ == '__main__':
#測試,順豐代碼:shunfeng
jsonStr = getExpress('shunfeng','102290224058')
showResult(jsonStr)
raw_input()
快遞公司名稱 代碼 快遞公司名稱 代碼 快遞公司名稱 代碼 A開頭
急先達 jixianda 微特派 weitepai 澳大利亞郵政 auspost 晉越快遞 jinyuekuaidi X開頭
AAE aae 捷特快遞 jietekuaidi 新邦物流 xinbangwuliu 安信達 anxindakuaixi 金大物流 jindawuliu 信豐物流 xinfengwuliu B開頭 嘉里大通 jialidatong 星晨急便 xingchengjibian 百世匯通 huitongkuaidi K開頭
鑫飛鴻 xinhongyukuaidi 百福東方 baifudongfang 快捷速遞 kuaijiesudi 希伊艾斯 cces BHT bht 康力物流 kangliwuliu 新蛋奧碩物流 neweggozzo 包裹/平郵/掛號 youzhengguonei 跨越物流 kuayue 香港郵政 hkpost 邦送物流 bangsongwuliu L開頭
Y開頭
C開頭
聯昊通 lianhaowuliu 圓通速遞 yuantong 希伊艾斯 cces 龍邦物流 longbanwuliu 韻達快運 yunda 傳喜物流 chuanxiwuliu 藍鏢快遞 lanbiaokuaidi 運通快遞 yuntongkuaidi D開頭
樂捷遞 lejiedi 郵政小包 youzhengguonei 大田物流 datianwuliu 聯邦快遞 lianbangkuaidi 郵政小包 youzhengguoji 德邦物流 debangwuliu 聯邦快遞 lianbangkuaidien 遠成物流 yuanchengwuliu DPEX dpex 立即送 lijisong 亞風速遞 yafengsudi DHL-中國件 dhl 隆浪快遞 longlangkuaidi 一邦速遞 yibangwuliu DHL-國際件 dhlen M開頭
優速物流 youshuwuliu DHL-德國件 dhlde 門對門 menduimen 源偉豐快遞 yuanweifeng D速快遞 dsukuaidi 美國快遞 meiguokuaidi 元智捷誠 yuanzhijiecheng 遞四方 disifang 明亮物流 mingliangwuliu 越豐物流 yuefengwuliu E開頭
O開頭
源安達 yuananda EMS ems OCS ocs 原飛航 yuanfeihangwuliu EMS-國際件 emsen onTrac ontrac 一統飛鴻 yitongfeihong E郵寶 ems Q開頭
Z開頭 F開頭
全晨快遞 quanchenkuaidi 忠信達快遞 zhongxinda Fedex-國際件 fedex 全際通 quanjitong 芝麻開門 zhimakaimen Fedex-中國件 fedexcn 全日通 quanritongkuaidi 銀捷速遞 yinjiesudi Fedex-美國件 fedexus 全一快遞 quanyikuaidi 宅急送 zhaijisong 飛康達物流 feikangda 全峰快遞 quanfengkuaidi 鄭州建華 zhengzhoujianhua 飛快達 feikuaida 七天連鎖 sevendays 中國東方 coe 凡客如風達 rufengda R開頭
中通速遞 zhongtong 風行天下 fengxingtianxia 如風達快遞 rufengda 中鐵物流 zhongtiewuliu 飛豹快遞 feibaokuaidi S開頭
中鐵快運 ztky G開頭
山東海紅 haihongwangsong 中郵物流 zhongyouwuliu 港中能達 ganzhongnengda 申通快遞 shentong 中速快件 zhongsukuaidi 國通快遞 guotongkuaidi 順豐速遞 shunfeng 中天萬運 zhongtianwanyun 廣東郵政 guangdongyouzhengwuliu 順豐速遞-國際 shunfengen
掛號信 youzhengguonei 三態速遞 santaisudi
國內郵件 youzhengguonei 速爾物流 suer
國際郵件 youzhengguoji 盛輝物流 shenghuiwuliu
GLS gls 盛豐物流 shengfengwuliu
共速達 gongsuda 上大物流 shangda
H開頭
賽澳遞 saiaodi
匯通快運 huitongkuaidi 山西紅馬甲 sxhongmajia
匯強快遞 huiqiangkuaidi 圣安物流 shenganwuliu
華宇物流 tiandihuayu 穗佳物流 suijiawuliu
恒路物流 hengluwuliu T開頭
華夏龍 huaxialongwuliu 天地華宇 tiandihuayu
海航天天 tiantian 天天快遞 tiantian
海外環球 haiwaihuanqiu TNT tnt
河北建華 hebeijianhua TNT-國際 tnten
海盟速遞 haimengsudi 通和天下 tonghetianxia
華企快運 huaqikuaiyun U開頭
J開頭
UPS ups
加拿大郵政 canpost UPS-國際 upsen
加拿大郵政 canpostfr USPS usps
佳吉物流 jiajiwuliu 優速物流 youshuwuliu
佳怡物流 jiayiwuliu W開頭
加運美 jiayunmeiwuliu 萬家物流 wanjiawuliu
京廣速遞 inguangsudikuaijian 萬象物流 wanxiangwuliu
“Python查詢快遞的方法是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。