ภาษา Python อ่านบัตรประชาชน+GUI save to database and excel(Part2)

Preechaik
2 min readMay 2, 2020

บทความนี้มีวัตถุประสงค์ เพื่อเป็นแนวทางพัฒนา GUI ทำงานร่วมกับ smart card reader แล้วบันทึกข้อมูลลงในฐานข้อมูลและโปรแกรม excel นำไปใช้งานได้จริง ผ่านตัวติดตั้ง ไฟล์.exe (รุ่นทดลองใน windows) โดยมี source code ให้ไปพัฒนาต่อ

วิธีทำ

ขั้นตอนที่ 1 โหลดไฟล์จาก github

https://github.com/preechai/smartcard

ขั้นตอนที่ 2 ติดตั้ง Module (จะมี module pyscard ที่ติดตั้งพิเศษหน่อย อ่านได้ที่ Part 1)

pip install -r requirements.txt

ขั้นตอนที่ 3 ติดตั้ง XAMPP

ทำหน้าที่จำลอง server เพื่อให้โปรแกรมสามารถบันทึกข้อมูลลงในฐานข้อมูลได้

ขั้นตอนที่ 4 รันโปรเจ็ค

python newGui.py

โปรเจคนี้จะมีอยู่ 2 ไฟล์ คือ

newRead.py

newRead.py ทำหน้าที่ อ่านข้อมูลจากบัตรประชาชนและจัดการข้อมูลให้ผู้ใช้สามารถอ่านได้ง่าย เช่น เพศ ที่รับจากบัตรประชาชน เป็น 0 กับ 1 จึงเปลี่ยนให้เป็น 0=หญิง,1= ชายเป็นต้น

newGui.py

newGui.py ทำหน้าที่แสดงหน้าจอโปรแกรมให้ผู้ใช้เห็น และติดต่อกับฐานข้อมูลรวมถึงการบันทึกข้อมูลอื่นๆ

ผลลัพธ์การรัน

หน้าสำหรับเชื่อมฐานข้อมูล
หน้าสำหรับอ่านบัตรประชาชน
หน้าสำหรับข้อมูลแบบกรอก กรณีลืมบัตร หรือเป็นชาวต่างชาติ

อธิบายการทำงานของ Floder

venv ทำหน้าที่เก็บ module ที่จำเป็นสำหรับโปรเจคไว้ในนี้ทั้งหมด

temp ทำหน้าที่เก็บรูปภาพตอนอ่านบัตร

result ทำหน้าที่เก็บข้อมูลรูปภาพกรณีที่เรากดบันทึก และเก็บข้อมูลไฟล์ excel

ตัวอย่างการบันทึกข้อมูลในฐานข้อมูล

ข้อผิดพลาดระบบนี้คือ ตรวจจับเลข13หลัก ถือว่าเป็นบัตร ประชาชน

ขั้นตอนที่ 5 ทำโปรแกรมให้เป็นไฟล์ .exe

อธิบายถึงตัว ภาษา python เป็นภาษาประเภท interpreter จะรันได้ก็ต่อเมื่อเครื่องนั้นมี python ดังนั้นเราต้องอาศัย module ชื่อ pyinstaller

pip install pyinstaller

จากนั้นพิมพ์คำสั่ง

pyinstaller --onefile -w newGui.py

จะได้ floder 2 อันคือ build กับ dist

ขั้นตอนต่อไปคือ นำไฟล์ newGui.exe ที่อยู่ใน floder dist ออกมาไว้ใน Floder SmatCard

และเริ่มกดใช้งานโปรแกรมได้เลย ขอให้สนุกกับมันนะครับ

--

--