欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

我的快遞一個(gè)月沒(méi)動(dòng)靜于是趕緊上線python快遞查詢系統(tǒng)

 更新時(shí)間:2021年09月18日 16:06:15   作者:顧木子吖  
我的快遞在路上走了一個(gè)月還沒(méi)到,于是自己編寫快遞查詢,文中通過(guò)實(shí)例代碼截圖的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧

導(dǎo)語(yǔ)

圖片

隨著網(wǎng)購(gòu)的廣泛普及,現(xiàn)在大部分年輕人都喜歡上了網(wǎng)購(gòu)的方式。

很多東西物美價(jià)廉,出不出戶也能滿足你的購(gòu)買需求!

尤其是中秋來(lái)臨,哪些假期短回不了家的也想給家人帶點(diǎn)兒中秋禮物~

這不?趕上中秋了,之前給家里寄東西的時(shí)候就出現(xiàn)過(guò)幾次,物流信息一直沒(méi)更新,不清楚東西到哪兒了,問(wèn)賣家:說(shuō)有時(shí)候上面沒(méi)更新,但是到你家樓下了會(huì)打電話讓你取快遞的~​

果然,emmmmmm,“打擾了??!”不知道你們遇到過(guò)沒(méi)??

后來(lái)小編在一個(gè)專門全國(guó)查詢快遞的網(wǎng)站找到了物流信息23333,感覺(jué)這還是蠻實(shí)用的,至少快遞也沒(méi)丟撒!

今天的話木木子帶大家寫一款有界面的專屬快遞物流查詢小系統(tǒng)~再也不用擔(dān)心自己的快遞突然消失啦!

​​​

正文

環(huán)境安裝:

安裝包-Python3、Pycharm2021、模塊-requests、pyqt5。

pip  install requests
pip  install  pyqt5       #當(dāng)然鏡像源更快安裝,環(huán)境問(wèn)題直接找我

(1)首先導(dǎo)入所有快遞公司的信息,這是以快遞100為例的哈,之前爬的數(shù)據(jù)。

companies = pickle.load(open('companies.pkl', 'rb'))

(2)利用快遞100查詢快遞。

def getExpressInfo(number):
	url = 'http://www.kuaidi100.com/autonumber/autoComNum?resultv2=1&text=%s' % number
	headers = {
				'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36',
				'Host': 'www.kuaidi100.com'
			}
	infos = []
	for each in requests.get(url, headers=headers).json()['auto']:
		company_name = each['comCode']
		url = 'http://www.kuaidi100.com/query?type=%s&postid=%s' % (company_name, number)
		temps = requests.get(url, headers=headers).json()['data']
		info = '公司: %s\n' % py2hz(company_name)
		for idx, each in enumerate(temps):
			if idx == 0:
				info += '-' * 60 + '\n時(shí)間:\n' + each['time'] + '\n進(jìn)度:\n' + each['context'] + '\n' + '-' * 60 + '\n'
			else:
				info += '時(shí)間:\n' + each['time'] + '\n進(jìn)度:\n' + each['context'] + '\n' + '-' * 60 + '\n'
		if not temps:
			info += '-' * 60 + '\n' + '單號(hào)不存在或已過(guò)期\n' + '-' * 60 + '\n'
		infos.append(info)
	return infos

(3)制作快遞查詢系統(tǒng)的界面。

class ExpressGUI(QWidget):
	def __init__(self, parent=None):
		super(ExpressGUI, self).__init__(parent)
		self.setWindowTitle('快遞查詢系統(tǒng)')
		self.label1 = QLabel('快遞單號(hào):')
		self.line_edit = QLineEdit()
		self.label2 = QLabel('查詢結(jié)果:')
		self.text = QTextEdit()
		self.button = QPushButton()
		self.button.setText('查詢')
		self.grid = QGridLayout()
		self.grid.setSpacing(12)
		self.grid.addWidget(self.label1, 1, 0)
		self.grid.addWidget(self.line_edit, 1, 1, 1, 39)
		self.grid.addWidget(self.button, 1, 40)
		self.grid.addWidget(self.label2, 2, 0)
		self.grid.addWidget(self.text, 2, 1, 1, 40)
		self.setLayout(self.grid)
		self.resize(600, 400)
		self.button.clicked.connect(self.inquiry)
	def inquiry(self):
		number = self.line_edit.text()
		try:
			infos = getExpressInfo(number)
			if not infos:
				infos = ['-' * 60 + '\n' + '單號(hào)不存在或已過(guò)期\n' + '-' * 60 + '\n']
		except:
			infos = ['-' * 60 + '\n' + '快遞單號(hào)有誤, 請(qǐng)重新輸入.\n' + '-' * 60 + '\n']
		self.text.setText('\n\n\n'.join(infos)[:-1])

效果如下:

​​附源碼:

'''
Function:
	快遞查詢系統(tǒng)
源碼基地:#959755565#
'''
import sys
import pickle
import requests
from PyQt5.QtWidgets import *
 
 
'''導(dǎo)入所有快遞公司信息'''
companies = pickle.load(open('companies.pkl', 'rb'))
 
 
'''將快遞公司的拼音變?yōu)闈h字'''
def py2hz(py):
	return companies.get(py)
 
 
'''利用快遞100查詢快遞'''
def getExpressInfo(number):
	url = 'http://www.kuaidi100.com/autonumber/autoComNum?resultv2=1&text=%s' % number
	headers = {
				'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.163 Safari/537.36',
				'Host': 'www.kuaidi100.com'
			}
	infos = []
	for each in requests.get(url, headers=headers).json()['auto']:
		company_name = each['comCode']
		url = 'http://www.kuaidi100.com/query?type=%s&postid=%s' % (company_name, number)
		temps = requests.get(url, headers=headers).json()['data']
		info = '公司: %s\n' % py2hz(company_name)
		for idx, each in enumerate(temps):
			if idx == 0:
				info += '-' * 60 + '\n時(shí)間:\n' + each['time'] + '\n進(jìn)度:\n' + each['context'] + '\n' + '-' * 60 + '\n'
			else:
				info += '時(shí)間:\n' + each['time'] + '\n進(jìn)度:\n' + each['context'] + '\n' + '-' * 60 + '\n'
		if not temps:
			info += '-' * 60 + '\n' + '單號(hào)不存在或已過(guò)期\n' + '-' * 60 + '\n'
		infos.append(info)
	return infos
 
 
'''制作簡(jiǎn)單的GUI'''
class ExpressGUI(QWidget):
	def __init__(self, parent=None):
		super(ExpressGUI, self).__init__(parent)
		self.setWindowTitle('快遞查詢系統(tǒng)')
		self.label1 = QLabel('快遞單號(hào):')
		self.line_edit = QLineEdit()
		self.label2 = QLabel('查詢結(jié)果:')
		self.text = QTextEdit()
		self.button = QPushButton()
		self.button.setText('查詢')
		self.grid = QGridLayout()
		self.grid.setSpacing(12)
		self.grid.addWidget(self.label1, 1, 0)
		self.grid.addWidget(self.line_edit, 1, 1, 1, 39)
		self.grid.addWidget(self.button, 1, 40)
		self.grid.addWidget(self.label2, 2, 0)
		self.grid.addWidget(self.text, 2, 1, 1, 40)
		self.setLayout(self.grid)
		self.resize(600, 400)
		self.button.clicked.connect(self.inquiry)
	def inquiry(self):
		number = self.line_edit.text()
		try:
			infos = getExpressInfo(number)
			if not infos:
				infos = ['-' * 60 + '\n' + '單號(hào)不存在或已過(guò)期\n' + '-' * 60 + '\n']
		except:
			infos = ['-' * 60 + '\n' + '快遞單號(hào)有誤, 請(qǐng)重新輸入.\n' + '-' * 60 + '\n']
		self.text.setText('\n\n\n'.join(infos)[:-1])
 
 
'''run'''
if __name__ == '__main__':
	app = QApplication(sys.argv)
	gui = ExpressGUI()
	gui.show()
	sys.exit(app.exec_())

總結(jié)

好啦!今天的文就寫到這里!雖然還有一個(gè)小時(shí)!【開始摸魚.jpg】因?yàn)槊魈熘芴煨菹⒀剑⊙鎏扉L(zhǎng)嘯!

到此這篇關(guān)于我的快遞一個(gè)月沒(méi)動(dòng)靜于是趕緊上線python快遞查詢系統(tǒng)的文章就介紹到這了,更多相關(guān)python 快遞查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實(shí)戰(zhàn)使用Selenium爬取網(wǎng)頁(yè)數(shù)據(jù)

    Python實(shí)戰(zhàn)使用Selenium爬取網(wǎng)頁(yè)數(shù)據(jù)

    這篇文章主要為大家介紹了Python實(shí)戰(zhàn)使用Selenium爬取網(wǎng)頁(yè)數(shù)據(jù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪
    2023-05-05
  • Pytorch的mean和std調(diào)查實(shí)例

    Pytorch的mean和std調(diào)查實(shí)例

    今天小編就為大家分享一篇Pytorch的mean和std調(diào)查實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • Python Numpy中數(shù)據(jù)的常用保存與讀取方法

    Python Numpy中數(shù)據(jù)的常用保存與讀取方法

    這篇文章主要介紹了Python Numpy中數(shù)據(jù)的常用保存與讀取方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • flask 實(shí)現(xiàn)上傳圖片并縮放作為頭像的例子

    flask 實(shí)現(xiàn)上傳圖片并縮放作為頭像的例子

    今天小編就為大家分享一篇flask 實(shí)現(xiàn)上傳圖片并縮放作為頭像的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-01-01
  • numpy中實(shí)現(xiàn)ndarray數(shù)組返回符合特定條件的索引方法

    numpy中實(shí)現(xiàn)ndarray數(shù)組返回符合特定條件的索引方法

    下面小編就為大家分享一篇numpy中實(shí)現(xiàn)ndarray數(shù)組返回符合特定條件的索引方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Python實(shí)現(xiàn)繪制置信區(qū)間

    Python實(shí)現(xiàn)繪制置信區(qū)間

    置信區(qū)間是從觀測(cè)數(shù)據(jù)的統(tǒng)計(jì)量計(jì)算的一種估計(jì)值,它給出了一個(gè)可能包含具有特定置信水平的總體參數(shù)的值范圍,下面我們就來(lái)看看如何使用Python繪制置信區(qū)間吧
    2024-02-02
  • python如何為被裝飾的函數(shù)保留元數(shù)據(jù)

    python如何為被裝飾的函數(shù)保留元數(shù)據(jù)

    這篇文章主要為大家詳細(xì)介紹了python如何為被裝飾的函數(shù)保留元數(shù)據(jù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • django加載本地html的方法

    django加載本地html的方法

    今天小編就為大家分享一篇django加載本地html的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python對(duì)文件目錄的操作方法實(shí)例總結(jié)

    python對(duì)文件目錄的操作方法實(shí)例總結(jié)

    這篇文章主要介紹了python對(duì)文件目錄的操作方法,結(jié)合實(shí)例形式總結(jié)分析了Python針對(duì)文件目錄相關(guān)的遍歷、刪除、移動(dòng)、查找等操作技巧,需要的朋友可以參考下
    2019-06-06
  • python如何按順序批量修改文件名

    python如何按順序批量修改文件名

    這篇文章主要介紹了python如何按順序批量修改文件名問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08

最新評(píng)論