有图有真相

脚本代码

最近刚入门py, 准备写点小玩意练练手. 于是决定拿快递100开刀. 因为它的api很简单.

# 快递100 API
# 作者: 剑齿虎
# 邮箱: yuxiaobo64@gmail.com import requests
import urllib # 函数: 承运公司名到文本
def GetComName(comCode):
if comCode=='shentong':
return '申通快递'
elif comCode=='zhontong':
return '中通快递'
elif comCode=='ems':
return 'EMS'
elif comCode=='huitongkuaidi':
return '汇通快运'
else:
return comCode # 函数: 取状态文本
def GetStateText(num):
if num==0:
return '运输中'
elif num==1:
return '揽件'
elif num==2:
return '疑难'
elif num==3:
return '已签收'
elif num==4:
return '退回签收'
elif num==5:
return '派送中'
elif num==6:
return '退回中' p = {}
p['text'] = input("请输入快递运单编号: ") #比如: 227728570825
autoComNum = requests.get("http://www.kuaidi100.com/autonumber/autoComNum", params=p)
com = autoComNum.json() if com['auto'] == []:
print("这是一个错误的运单编号!") else:
print("\n---------------- 承运公司 ------------------\n")
i=0
for this in com['auto']:
i = i + 1
print( str(i) + ". " + GetComName(this['comCode']) + "\n") num = input("承运公司序号: ")
print("\n---------------- 正在查询, 请稍等... ------------------\n")
data = {}
data['type'] = com['auto'][int(num)-1]['comCode']
data['postid'] = p['text']
data['valicode'] = ''
data['id'] = 1
data['temp'] = '0.14881871496191512'
query = requests.get("http://www.kuaidi100.com/query", params=data)
res = query.json() print("\n运单编号 --> " + res['nu'])
print("\n承运公司 --> " + GetComName(res['com']))
print("\n当前状态 --> " + GetStateText(int(res['state'])))
print("\n---------------- 跟踪信息 ------------------\n")
for this in res['data']:
print(this['time'] + "\t" + this['context'] + "\n") input("\n\n感谢使用, 脚本作者:剑齿虎. API:快递100")

[Python3] 初识py, 一个简单练手的小玩意. 快递查询的更多相关文章

  1. 一个vue练手的小项目

    编程路上的菜鸟一枚 : 最近接触了vue 然后写了一个练手的项目 使用vue-cli脚手架来搭建了的项目 技术: vue2  + vue-router  + ES6 + axios 框架有 mint- ...

  2. 【编程练习】最近准备开始找工作,这篇文章作为一个code练手题目的总结吧

    找工作时候一般需要准备的算法题目类型,其实参考leetcode和poj或者剑指offer基本能够摆平大部分的题目了 1.图的遍历,BFS.DFS: 2.递归的回溯剪枝: 3.树的建立和遍历: 4.状态 ...

  3. python3.6的turtle库练手

    import turtle as t t.speed(10) t.pencolor("yellow") t.fillcolor("red") for num i ...

  4. 【开源】前端练手笔记,Chrome扩展应用程序(html+CSS+JS) (1)

    项目名称:github-notification 项目地址:https://github.com/WQTeam/github-notification 说明:本人打算抽时间学习前端(html + cs ...

  5. 一个简单的flask程序

    初始化 所有Flask程序都必须创建一个程序实例. 程序实例是Flask类的对象,经常使用下述代码创建: from flask import Flask app = Flask(__name__) F ...

  6. 仿PC版微信的练手项目(可实时通讯)

    仿PC版微信的DEMO 本项目是由一个仿PC版微信的vue前端项目,和一个使用leancloud进行数据存储的.提供WebSocket的node后端项目构成. 本项目使用的技术栈:vue + vue- ...

  7. 『练手』005 Laura.SqlForever历史遗留 的 架构思想缺陷

    005 Laura.SqlForever历史遗留 的 架构思想缺陷 我们 比较一下 Laura.WinFramework 和 Laura.XtraFramework 的差异: Laura.WinFra ...

  8. Xamarin入门,开发一个简单的练手APP

    之前周末用Xamarin练手做了个简单APP,没有啥逻辑基本就是个界面架子,MVVM的简单使用,还有Binding,Command的简单使用,还有一个稍微复杂点两个界面交互处理(子页面新增后关闭,父页 ...

  9. 推荐:一个适合于Python新手的入门练手项目

    随着人工智能的兴起,国内掀起了一股Python学习热潮,入门级编程语言,大多选择Python,有经验的程序员,也开始学习Python,正所谓是人生苦短,我用Python 有个Python入门练手项目, ...

  10. 简单的ssm练手联手项目

    简单的ssm练手联手项目 这是一个简单的ssm整合项目 实现了汽车的品牌,价格,车型的添加 ,修改,删除,所有数据从数据库中拿取 使用到了jsp+mysql+Mybatis+spring+spring ...

随机推荐

  1. C#/VB.NET:如何从 PowerPoint 演示文稿中提取文本

    在学习或者日常工作中,有时我们需要把幻灯片的东西整理成文字,而从 PowerPoint 演示文稿中一张一张的整理手动复制粘贴,整个过程会非常费精力且耗时.那么怎么样才能比较轻松且快速地提取PowerP ...

  2. 使用c#实现23种常见的设计模式

    使用c#实现23种常见的设计模式 设计模式通常分为三个主要类别: 创建型模式 结构型模式 行为型模式. 这些模式是用于解决常见的对象导向设计问题的最佳实践. 以下是23种常见的设计模式并且提供c#代码 ...

  3. JS逆向实战16——猿人学第20题 新年挑战-wasm进阶

    声明 本文章中所有内容仅供学习交流,抓包内容.敏感网址.数据接口均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关,若有侵权,请联系我立即删除! 网站 https://ma ...

  4. 创建springboot工程失败解决 spring initializr Error:cannot download

    创建springboot工程失败解决 问题描述 原因分析: 网络不好,因为springBooT项目的创建时必须联网的 解决方案: 方案一: 将创建 springBoot 工程的地址更换为如下的地址 阿 ...

  5. 逍遥自在学C语言 | 指针和数组的关联

    前言 指针和数组之间存在着紧密的关系.在本文中,我们将探讨指针和数组的关系.指针算术和数组遍历.多维数组与指针以及指针数组和数组指针. 一.人物简介 第一位闪亮登场,有请今后会一直教我们C语言的老师 ...

  6. 【LeetCode摩尔投票】有趣的简单题:数组中出现次数超过一半的数字

    数组中出现次数超过一半的数字 https://leetcode.cn/problems/shu-zu-zhong-chu-xian-ci-shu-chao-guo-yi-ban-de-shu-zi-l ...

  7. asp登录认证,记录最后一次登录时间,写入数据库代码

    最近开发了一个船员招聘网的程序,但是由于部分功能需要配合ASP代码才能使用,所以就发现以前写的这个asp登录认证代码,今天就将他公布一下. <!--#include file="con ...

  8. PostgreSQL 12 文档: 部分 III. 服务器管理

    部分 III. 服务器管理 这部份覆盖了PostgreSQL数据库管理员感兴趣的主题.包括软件安装.搭建和配置一个服务器.管理用户和数据库以及维护任务.任何想要运行一个PostgreSQL服务器的人( ...

  9. C#.NET Framework 使用BC库(BouncyCastle) RSA 公钥加密 私钥解密 ver:20230706

    C#.NET Framework 使用BC库(BouncyCastle) RSA 公钥加密 私钥解密 ver:20230706 环境说明: .NET Framework 4.6 的控制台程序 . 20 ...

  10. 自己动手实现rpc框架(二) 实现集群间rpc通信

    自己动手实现rpc框架(二) 实现集群间rpc通信 1. 集群间rpc通信 上一篇博客中MyRpc框架实现了基本的点对点rpc通信功能.而在这篇博客中我们需要实现MyRpc的集群间rpc通信功能. 自 ...