本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理。

以下文章来源于Python爬虫与数据挖掘 ,作者 Python进阶者

我们经常会去查快递的物流单号,可是这些物流单号是从哪里来的呢?

快递鸟集合了多家快递公司查询接口,输入相应快递公司编码和快递单号就可以获取到对应的物流信息很方便快捷。

项目目标

教会大家如何用Python编程去查询自己的物流信息。

项目准备

软件:PyCharm

需要的库:urllib.request、json

网站如下:

https://www.kuaidi100.com

项目分析

一、如何获取真正的网址,拿到相对应的接口?

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解析获取对应的字段。

项目实现

1、定义一个class类继承object。导入需要的库和网址。定义一个字典kd_dict存放快递公司简称。

import urllib.request
import jsonkd_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:breakkd_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':breakelse:print("\n")continue

效果展示

1、点击绿色小三角运行,之后输入快递公司代表的编号。

2、输入你的快递单号,之后在控制台上可以看到显示结果,如下图所示。

python爬取快递100,运行代码就能查询的物流信息相关推荐

  1. python爬取物流信息_手把手教你用Python爬取快递100查询你的物流信息

    前言 我们经常会去查快递的物流单号,可是这些物流单号是从哪里来的呢? 快递鸟集合了多家快递公司查询接口,输入相应快递公司编码和快递单号就可以获取到对应的物流信息很方便快捷. 项目目标 教会大家如何用P ...

  2. Python爬取自然风景图片代码

    Python爬取自然风景图片代码 \qquad 需要用到python的etree库和requests库,需要提前下载安装. from lxml import etree import requests ...

  3. python爬取气象台每日天气图代码

    特别鸣谢以下更多python教程请到友情连接: 菜鸟教程https://www.piaodoo.com 初中毕业读什么技校 http://cntkd.net 茂名一技http://www.enechn ...

  4. Python爬取携程机票代码实例

    Python爬取携程机票代码实例 现在携程的页面是通过接口传递数据的,不能直接使用xpath进行解析,需要模拟调用接口的步骤 dcity是指出发地的城市编码 acity是指目的地的城市编码 其他参数是 ...

  5. python爬取网页书籍名称代码_python爬取亚马逊书籍信息代码分享

    我有个需求就是抓取一些简单的书籍信息存储到mysql数据库,例如,封面图片,书名,类型,作者,简历,出版社,语种. 我比较之后,决定在亚马逊来实现我的需求. 我分析网站后发现,亚马逊有个高级搜索的功能 ...

  6. [爬虫-python]爬取京东100页的图书(机器学习)的信息(价格,打折后价格,书名,作者,好评数,差评数,总评数)

    Python爬取京东的机器学习类图书的信息 一,配置搜索关键字和页数, 二,查找用到的三个URL的过程 1. 搜索图书的URL 2. 评论总数,差评数,好评数的URL 3. 当前价格与打折前价格URL ...

  7. python爬取物流信息_python爬取快递100,运行代码就能查询的物流信息

    本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 以下文章来源于Python爬虫与数据挖掘 ,作者 Python进阶者 我们经常会 ...

  8. python爬取京东商品信息代码_爬取京东商品信息

    利用 BeautifulSoup + Requests 爬取京东商品信息并保存在Excel中 一.查看网页信息 打开京东商城,随便输入个商品,就选固态硬盘吧 先看看 URL 的规律,可以看到我们输入的 ...

  9. 利用Python爬取房价信息(附代码)

    大家好,我是带我去滑雪,每天教你一个小技巧!住房问题从古到今一直备受人们关注.从老子谈到的"安居乐业",再到诗人杜甫所描绘的"安得广厦千万间,大庇天下寒士俱欢颜" ...

最新文章

  1. 从YOLOv1到YOLOv3,目标检测的进化之路
  2. 我在兰亭这三年之自动化框架升级
  3. python增加一列数据计算年龄_无法使用python中的条件计算年龄。得到一个价值
  4. centos minimal Bind 主从服务器部署
  5. 云栖大会上,阿里巴巴重磅发布前端知识图谱!
  6. 使用 ssh 命令来访问(登录/连接)远程服务器主机
  7. 寻找数组中第K频繁的元素
  8. Silverlight 解谜游戏 之十二 游戏暗示(1)
  9. 拓端tecdat|R语言基于ARMA-GARCH过程的VaR拟合和预测
  10. 【Java面试系列】Linux面试题
  11. Android OTA本地自动升级实现
  12. 数据分析的价值是什么?如何做好数据分析?
  13. Jupyter Notebook 快捷键、安装主题、修改颜色、设置字体、注释斜体修改
  14. linux系统时间编程(2) 各种时间标准GMT、UTC、世界时、TAI
  15. [4G/5G/6G专题基础-154]: 5G无线准入控制RAC(Radio Admission Control)+ 其他准入控制
  16. iOS Masonry 布局- UIScrollView/Masonry自动布局对UIScrollView的内容自适应
  17. linux echo 字体大小 背景 字体颜色 的编码
  18. 记录下关于虹软人脸验证
  19. C#基础 string Split 用字符分割字符串,删除空白项
  20. 一款超好用的截图软件Snipaste

热门文章

  1. 怎样旋转PDF图片的方向
  2. Android轮播广告栏
  3. php5.3.27下载,php-5.3.27-Win32-VC9-x86
  4. 这两款软件让你实现把手机屏幕变成提词器
  5. 拉卡拉支付——全面覆盖收单场景
  6. c语言编程银行排队系统,C语言_课程设计银行排队系统.doc
  7. certbot为NGINX配置SSL证书
  8. 大数据毕设选题 - 大数据网络舆情热点数据分析系统(情感分析 python)
  9. App Key 和 App Secret 有什么用?
  10. vue elementui 年份列表和月份列表