/1 前言/
我们经常会去查快递的物流单号,可是这些物流单号是从哪里来的呢?
快递鸟集合了多家快递公司查询接口,输入相应快递公司编码和快递单号就可以获取到对应的物流信息很方便快捷。
/2 项目目标/
教会大家如何用Python编程去查询自己的物流信息。
/3 项目准备/
软件:PyCharm
需要的库:urllib.request、json
网站如下:
https://www.kuaidi100.com
/4 项目分析/
一、如何获取真正的网址,拿到相对应的接口?
1、chrome浏览器F12检查,随便输入一个快递单号,点击查找。如图:
2、找到
query?type=shentong&postid=773036432685909&temp=0.0
这个文件。找到Request URL:复制网址。
3、分析网址:
https://www.kuaidi100.com/query?type=shentong&postid=773036432685909&temp=0.03191355265516216&phone=
4、可以看到postid就是我们的快递单号,type就是各个快递公司的名字拼音的简称。那等下就可以定义这个字典去存放各个公司名字的简称拼接网址。
5、找到Preview=>>对应的data可以看到context就是物流信息。等下可以通过js解析获取对应的字段。
/5 项目实现/
1、定义一个class类继承object。导入需要的库和网址。定义一个字典kd_dict存放快递公司简称。
import urllib.request import json kd_dict = {1: 'shentong', 2: 'youzhengguonei', 3: 'yuantong', 4: 'shunfeng', 5: 'yunda', 6: 'zhongtong'} class YU(object): pass
2、建立查询框架。
while True: print("输入要查询快递公司:") print("1.申通 2.EMS邮政 3.圆通 4.顺风 5.韵达 6.中通 0.退出\n ") choose = int(input("请选择您的快递公司:")) while choose not in range(0, 7): choose = int(input("抱歉暂不支持此公司请重新选择:")) if choose == 0: break kd_num = input("请输入快递单号:")
3、对js文件进行解析。
url = "http://www.kuaidi100.com/query?type=%s&postid=%s" % (kd_dict[choose], kd_num) response = urllib.request.urlopen(url) html = response.read().decode('utf-8') target = json.loads(html)
4、判断status的是不是200,是200才可以正常访问 ,获取对应的data。
if status == '200': data = target['data'] # print(data) data_len = len(data) # print(data_len) # print("\n")
5、for循环遍历,获取对应的字段。
for i in range(data_len): print("\n时间: " + data[i]['time']) print("状态: " + data[i]['context'] + "") print("\n感谢使用!\n") break else: print("输入有误请重新输入!\n")
6、程序循环。
while True: YU.Check() out = input("按任意数字退出(其他键继续).........") if out >= '0' and out <= '7': break else: print("\n") continue
/6 效果展示/
1、点击绿色小三角运行,之后输入快递公司代表的编号。
2、输入你的快递单号,之后在控制台上可以看到显示结果,如下图所示。
/7 小结/
以上是手把手教你用Python查询你的物流信息的详细内容。更多信息请关注PHP中文网其他相关文章!

pythonisehybridmodelofcompilationand interpretation:1)thepythoninterspretercompilesourcececodeintoplatform- interpententbybytecode.2)thepytythonvirtualmachine(pvm)thenexecuteCutestestestesteSteSteSteSteSteSthisByTecode,BelancingEaseofuseWithPerformance。

pythonisbothinterpretedAndCompiled.1)它的compiledTobyTecodeForportabilityAcrosplatforms.2)bytecodeisthenInterpreted,允许fordingfordforderynamictynamictymictymictymictyandrapiddefupment,尽管Ititmaybeslowerthananeflowerthanancompiledcompiledlanguages。

在您的知识之际,而foroopsareideal insinAdvance中,而WhileLoopSareBetterForsituations则youneedtoloopuntilaconditionismet

ForboopSareSusedwhenthentheneMberofiterationsiskNownInAdvance,而WhileLoopSareSareDestrationsDepportonAcondition.1)ForloopSareIdealForiteratingOverSequencesLikelistSorarrays.2)whileLeleLooleSuitableApeableableableableableableforscenarioscenarioswhereTheLeTheLeTheLeTeLoopContinusunuesuntilaspecificiccificcificCondond

pythonisnotpuroly interpred; itosisehybridablectofbytecodecompilationandruntimeinterpretation.1)PythonCompiLessourceceCeceDintobyTecode,whitsthenexecececected bytybytybythepythepythepythonvirtirtualmachine(pvm).2)

concateNateListsinpythonwithTheSamelements,使用:1)operatototakeepduplicates,2)asettoremavelemavphicates,or3)listCompreanspearensionforcontroloverduplicates,每个methodhasdhasdifferentperferentperferentperforentperforentperforentperfortenceandordormplications。

pythonisanterpretedlanguage,offeringosofuseandflexibilitybutfacingperformancelanceLimitationsInCricapplications.1)drightingedlanguageslikeLikeLikeLikeLikeLikeLikeLikeThonexecuteline-by-line,允许ImmediaMediaMediaMediaMediaMediateFeedBackAndBackAndRapidPrototypiD.2)compiledLanguagesLanguagesLagagesLikagesLikec/c thresst

Useforloopswhenthenumberofiterationsisknowninadvance,andwhileloopswheniterationsdependonacondition.1)Forloopsareidealforsequenceslikelistsorranges.2)Whileloopssuitscenarioswheretheloopcontinuesuntilaspecificconditionismet,usefulforuserinputsoralgorit


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

mPDF
mPDF是一个PHP库,可以从UTF-8编码的HTML生成PDF文件。原作者Ian Back编写mPDF以从他的网站上“即时”输出PDF文件,并处理不同的语言。与原始脚本如HTML2FPDF相比,它的速度较慢,并且在使用Unicode字体时生成的文件较大,但支持CSS样式等,并进行了大量增强。支持几乎所有语言,包括RTL(阿拉伯语和希伯来语)和CJK(中日韩)。支持嵌套的块级元素(如P、DIV),

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

记事本++7.3.1
好用且免费的代码编辑器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器
将Eclipse与SAP NetWeaver应用服务器集成。