欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
新中新a16d二代居民身份證閱讀器Python示例

發(fā)現酒店、網(wǎng)吧、公家單位好多都是使用的這種藍色的身份證讀取盒子,所以我研究了一下也寫(xiě)個(gè)Python示例

網(wǎng)上搜了搜關(guān)于這款機器的SDK,基本上全是C#的帖子

首先,先安裝他們的驅動(dòng),我使用的是USB驅動(dòng),在他們官網(wǎng)上下載了動(dòng)態(tài)鏈接庫,實(shí)際上就是使用SynIDCardAPI.dll這個(gè)庫。

下面,我們來(lái)調用一下他們提供的接口(接口文檔就不提供了,可以去他們官網(wǎng)下載后觀(guān)摩),下面是我的Python代碼:

  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import ctypes, sys, re
  4. from ctypes import * #因為使用的是C/C++的庫,所以我們引用ctypes
  5. dll = ctypes.windll.LoadLibrary("SynIDCardAPI.dll") #載入庫
  6. iPort = dll.Syn_FindUSBReader() #尋找USB,返回的貌似是什么端口
  7. pucIIN = ctypes.create_string_buffer(128)
  8. dll.Syn_StartFindIDCard(iPort, pucIIN, 1) #開(kāi)始找卡
  9. pucSN = ctypes.create_string_buffer(128)
  10. dll.Syn_SelectIDCard(iPort, pucSN, 1) #選擇卡
  11. cPhotopath = ctypes.create_string_buffer(255)
  12. dll.Syn_SetPhotoPath(1, cPhotopath) #這一步很重要,他們默認把身份證頭像存在了C盤(pán)根目錄,導致win7下面調用會(huì )導致python崩潰,原因是沒(méi)有管理員權限,這里1參數可以換到當前目錄即可
  13. #下面調用他們的最終讀取函數Syn_ReadMsg,第三個(gè)參數是一個(gè)結構體,Python本身沒(méi)有C/C++那樣的結構體,但是可以通過(guò)ctypes的Structure來(lái)解決
  14. class IDCardData(Structure):
  15. _fields_ = [
  16. ('Name', c_char * 32), #姓名
  17. ('Sex', c_char * 6), #性別
  18. ('Nation', c_char * 20), #民族
  19. ('Born', c_char * 18), #出生日期
  20. ('Address', c_char * 72), #住址
  21. ('IDCardNo', c_char * 38), #身份證號
  22. ('GrantDept', c_char * 32), #發(fā)證機關(guān)
  23. ('UserLifeBegin', c_char * 18), #有效開(kāi)始日期
  24. ('UserLifeEnd', c_char * 18), #有效截止日期
  25. ('reserved', c_char * 38), #保留
  26. ('PhotoFileName', c_char * 255) #照片路徑
  27. ]
  28. data = IDCardData()
  29. r = dll.Syn_ReadMsg(iPort, 1, byref(data))
  30. if r == 0:
  31. reserved = (getattr(data, 'reserved') if getattr(data, 'reserved') != '' else 'None')
  32. result = getattr(data, 'Name') + "||" + getattr(data, 'Sex') + "||" + getattr(data, 'Nation') + "||" + getattr(data, 'Born') + "||" + getattr(data, 'Address') + "||" + getattr(data, 'IDCardNo') + "||" + getattr(data, 'GrantDept') + "||" + getattr(data, 'UserLifeBegin') + "||" + getattr(data, 'UserLifeEnd') + "||" + reserved + "||" + getattr(data, 'PhotoFileName')
  33. result = result.decode('gbk').encode('utf8')
  34. print result #這里就返回的是身份證信息,我這里以雙豎線(xiàn)分隔拼成字符串了
  35. else:
  36. print "None"

說(shuō)實(shí)話(huà),他們的接口壓根就沒(méi)有考慮什么PHP、Python這類(lèi)語(yǔ)言,一點(diǎn)都不方便,給C#卻提供了很多示例,真心操蛋!

留帖為了方便我以后查看,也給學(xué)習Python的童鞋們一個(gè)希望,讀取身份證類(lèi)似的C/S架構軟件也可以使用wxPython進(jìn)行開(kāi)發(fā)。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Python調用windows下DLL詳解 - ctypes庫的使用
Python:使用ctypes庫調用外部DLL
Python使用ctypes模塊調用DLL函數之傳遞數值、指針與字符串參數
Python量化接口源碼分享
Python的學(xué)習(三十二)
Python調用windows下DLL詳解
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久