ภาษา Python อ่านบัตรประชาชน+GUI save to database and excel(Part2)
บทความนี้มีวัตถุประสงค์ เพื่อเป็นแนวทางพัฒนา 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 ทำหน้าที่ อ่านข้อมูลจากบัตรประชาชนและจัดการข้อมูลให้ผู้ใช้สามารถอ่านได้ง่าย เช่น เพศ ที่รับจากบัตรประชาชน เป็น 0 กับ 1 จึงเปลี่ยนให้เป็น 0=หญิง,1= ชายเป็นต้น
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
และเริ่มกดใช้งานโปรแกรมได้เลย ขอให้สนุกกับมันนะครับ