Skip to content

ตรวจสอบภาษาด้วย Python

สวัสดีผู้อ่านทุกท่านครับ จากบทความที่แล้ว ผมได้พาทุกท่านไปทำเว็บแปลคำศัพท์อังกฤษเป็นไทยด้วย Python CGI + Apache กันมาแล้วครับ แล้วเกิดคำถามว่า หากเราต้องการให้ผู้ใช้พิมพ์ข้อความแล้วตรวจสอบว่าใช้ภาษาอะไร ทำการแปลออกมาเลยในครั้งเดียวครับ บทความนี้จะพาผู้อ่านไปตรวจสอบภาษาด้วย Python กันครับ

ในภาษา Python ได้มีการ Port ไลบรารีที่ชื่อว่า language-detection ซึ่งเป็นไลบรารีสำหรับตรวจสอบภาษาในภาษา Java มายังภาษา Python ครับ โดยใช้ชื่อไลบรารีว่า langdetect

ไลบรารี langdetect

  • รองรับทั้ง Python 2 , Python 3
  • ใช้ Apache Software License ครับ

สามารถติดตั้งได้ง่าย ๆ โดยใช้คำสั่ง pip:

pip install langdetect

หรือโหลดโค้ดมาติดตั้งเองจาก PyPI แตกไฟล์แล้วใช้คำสั่ง

python setup.py install

การใช้งาน

ในการใช้งานไลบรารี langdetect ในการตรวจสอบภาษา ทำได้ง่าย ๆ ดังนี้ครับ

>>> from langdetect import detect
>>> detect("War doesn't show who's right, just who's left.") #ตรวจสอบข้อความว่าเป็นภาษาอะไร
'en'
>>> detect("สวัสดีครับ :D")
'th'

ผลลัพธ์ออกมาจะเป็นชื่อย่อของภาษาที่ตรวจสอบพบครับ
นอกจากนั้นไลบรารีนี้ยังสามารถวัดความถี่ของภาษาต่าง ๆ หากในประโยคนั้น ๆ มีการใช้ภาษามากกว่า 1 ภาษา ได้ตามนี้ครับ

>>> from langdetect import detect_langs
>>> detect_langs("Otec matka syn.")
[pl:0.5714284173342413, fi:0.4285704692167082]
>>> detect_langs("แมว กิน ปลา")
[th:0.9999999484920452] 
>>> detect_langs("แมว กิน apple")
[th:0.9999996897932656]
>>> detect_langs("แมว eat apple")
[en:0.8571395689001586, th:0.14285621893251102]

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

Published on Categories ไม่มีหมวดหมู่

About wannaphong

วรรณพงษ์ ภัททิยไพบูลย์ ผู้ดูแลเว็บ wannaphong.com และผู้เขียนบทความบล็อกนี้ นักศึกษาชั้นปีที่ 1 สาขาวิทยาการคอมพิวเตอร์และสารสนเทศ คณะวิทยาศาสตร์ประยุกต์และวิศวกรรมศาสตร์ มหาวิทยาลัยขอนแก่น วิทยาเขตหนองคาย

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *