国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Python完成簡單鑒別數(shù)百個(gè)物流單號

89542767 / 467人閱讀

  在我們要寄出去許多快遞包裹時(shí),為了能及時(shí)溝通物流詳情,要迅速將物流單號分離出來。這時(shí)候用手動式去鑒別確實(shí)太麻煩了,因此本文用Python完成簡單鑒別數(shù)百個(gè)物流單號,所需的可以了解一下


  小伙伴們好,我是大五


  這也是Python改變未來系列第三篇,是一個(gè)和你們相關(guān)的難題實(shí)例。


  前情提要


  掌握我的好朋友很有可能都清楚,阿浩常給大伙兒送書。近一年,算不上協(xié)同抽獎活動送書,獨(dú)立我自買+出版社出版冠名贊助已送出去1000本書本。

01.png

  假如是自買得話,還要自身聯(lián)絡(luò)迅速小伙寄出去書本。


  寄出后快遞小哥會給我截圖來反饋,然而我想要單號的時(shí)候就遇到問題了。

02.png

  每次寄完書,我都只能得到n個(gè)截圖(內(nèi)含快遞信息)。

03.png

  為了及時(shí)反饋大家物流信息,我需要盡快將快遞單號提取出來。


  思考解決辦法


  每次大概都有十幾到幾十張截圖,手動去識別真的太麻煩。


  不如先看看每張截圖大概是什么樣子,再去想想批量處理的辦法吧。

04.png

  主要是為了批量獲取圖片中的快遞單號,我想到了兩個(gè)解決辦法:


  用python識別條形碼來直接獲得準(zhǔn)確快遞單號


  用python調(diào)用ocr,識別截圖中的快遞單號文字


  大家覺得哪個(gè)更簡單更準(zhǔn)確呢?


  今天我先聊聊第一種方法的流程和踩坑經(jīng)歷。


  遍歷圖片


  首先,第一步需要先獲取文件夾中的所有截圖,再依次進(jìn)行條形碼識別。


  具體操作可以參考注釋


  import os
  def get_jpg():
      jpgs = []
      path = os.getcwd()
      for i in os.listdir(path):  #獲取文件列表
          if i.split(".")[-1] == "jpg":  #篩選jpg文件(截圖)
              oldname=os.path.join(path,i)  #舊文件名
              i = i.replace('微信圖片_','')
              newname=os.path.join(path,i)  #新文件名
              os.rename(oldname,newname)  #改名
              jpgs.append(i)
      return jpgs


  上面的代碼中除了遍歷篩選圖片,還涉及了改名的操作。


  這是因?yàn)槲以诤竺媸褂胦pencv時(shí),打開的路徑只要含有中文就會一直報(bào)錯,于是我就干脆把截圖名稱里的中文去除。


  執(zhí)行構(gòu)建的get_jpg()函數(shù),得到

05.png

  這些就是演示文件中的四個(gè)截圖文件,下面開始對他們進(jìn)行識別。


  識別條形碼


  python的第三方模塊pyzbar可以很方便地處理二維碼的識別。我們這次用它來識別一維條形碼的話,用法也大致一樣。不過還要搭配cv2使用,主要是為了利用cv2.imread()來讀取圖片文件。


  注意:對于cv2模塊,安裝時(shí)需要輸入pip3installopencv-python,但在導(dǎo)入的時(shí)候采用importcv2。


  識別條形碼的具體語句如下所示:


  import pyzbar.pyzbar as pyzbar
  import cv2
  def get_barcode(img):
      image = cv2.imread(img)
      barcodes = pyzbar.decode(image)
      barcode = barcodes[0]
      barcode_data = barcode.data.decode("utf-8")
      return barcode_data


  上面構(gòu)建的get_barcode()函數(shù)可以實(shí)現(xiàn)識別條形碼,并返回結(jié)果數(shù)據(jù)。


  我們可以用for循環(huán)遍歷前文獲取的所有圖片,再依次使用get_barcode()函數(shù)來識別條形碼。


  data_m =[]
  for i in jpgs:
      data = get_barcode(i)
      data_m.append(data)
  data_m


  可以發(fā)現(xiàn),成功識別了四張截圖里的條形碼,并獲取了對應(yīng)的快遞單號。

06.png

  小結(jié)


  回顧今天的問題案例,我先通過思考想出了兩種解決辦法。第一種的優(yōu)點(diǎn)是識別條形碼比OCR更準(zhǔn)確,但是其只獲取了快遞單號。后續(xù)在給獲得贈書的同學(xué)反饋時(shí),我還需要手動將名字和單號對應(yīng),不夠偷懶。后續(xù)將給大家介紹第二種方法的流程和優(yōu)缺點(diǎn)。


  綜上所述,這篇文章就給大家介紹到這里了,希望可以給大家?guī)韼椭?/p>

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/128803.html

相關(guān)文章

  • 如何能正常獲取17track物流網(wǎng)站的物流信息?

    摘要:需要的數(shù)據(jù)就是這個(gè)快遞軌跡,看到上面的好像沒什么問題,挺容易的,這還有什么比這爽的,趕緊使用請求一波。由于說過了,就不多說了,突破了繼續(xù)刷新也會遇到一些未定義的,也是同樣扣代碼,就不多說了,這里說另一個(gè)。 原本昨天就要發(fā)文章的了,由于之前的pdd文章被投訴了,刪除了,影響心情的同時(shí)也不敢亂發(fā)文章了,所以就暫時(shí)歇了一天,也改了另外一個(gè)網(wǎng)站,就是今天的物流網(wǎng)站。如果大家某天看不到我發(fā)文了,...

    mingzhong 評論0 收藏0
  • 寫一個(gè)小程序菜鳥裹裹吧

    摘要:最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥裹裹小程序時(shí),卻沒有發(fā)現(xiàn),于是便想自己動手仿版寫一個(gè)菜鳥裹裹的小程序,對其中的快遞查詢物流跟蹤很有興趣。 新手寫小程序并不簡單,這是我的第一次嘗試學(xué)習(xí)到了很多。最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥...

    NikoManiac 評論0 收藏0
  • 寫一個(gè)小程序菜鳥裹裹吧

    摘要:最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥裹裹小程序時(shí),卻沒有發(fā)現(xiàn),于是便想自己動手仿版寫一個(gè)菜鳥裹裹的小程序,對其中的快遞查詢物流跟蹤很有興趣。 新手寫小程序并不簡單,這是我的第一次嘗試學(xué)習(xí)到了很多。最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥...

    dinfer 評論0 收藏0
  • 寫一個(gè)小程序菜鳥裹裹吧

    摘要:最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥裹裹小程序時(shí),卻沒有發(fā)現(xiàn),于是便想自己動手仿版寫一個(gè)菜鳥裹裹的小程序,對其中的快遞查詢物流跟蹤很有興趣。 新手寫小程序并不簡單,這是我的第一次嘗試學(xué)習(xí)到了很多。最近雙十一過后,每天不是拿快遞就是去拿快遞的路上,翻開手機(jī)應(yīng)用里的菜鳥裹裹查看快遞是很方便的,當(dāng)我在微信端搜索菜鳥...

    Michael_Lin 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<