แปลง Orchid Corpus ไว้ใช้งาน

27 Oct
screen-shot-2559-10-27-at-7-39-57-pm

เมื่อวันก่อนทำการแปลง Lexcitron ไว้ใช้งาน ให้อยู่ในรูปแบบ CSV สำหรับเอาไว้ใช้ในงานวิจัยแล้วซึ่งรูปแบบ CSV น่าจะเป็นรูปแบบที่สะดวกใช้ที่สุด วันนี้เลยทำการแปลงตัว Orchid Corpus ไว้ใช้งานบ้าง ซึ่ง Orchid Corpus นี้เป็นคลังคำภาษาไทยที่รวบรวมและจำแนกโดย nectec ซึ่งข้อดีของของ Orchid Corpus คือมี Part of Speech ที่ละเอียดมากกว่าของ Lexcitron ซึ่งจำเป็นต้องใช้ในงานวิจัยนี้ และตัว Orchid Corpus ก็ไม่ได้มีโครงสร้างที่ซับซ้อนอะไรมากนัก เลยลองเขียน Code ด้วยภาษา Python ง่ายๆ เพื่ออ่านไฟล์ Orchid Corpus ออกมาและจัดเรียงรูปแบบที่สะดวกใช้งานให้อยู่ในรูปแบบ … Read More »

แปลง Lexitron Dictionary เอาไว้ใช้งาน

23 Oct
Screen Shot 2559-10-23 at 11.17.41 AM

เริ่มต้นงานวิจัยใหม่อีกครั้ง สำหรับครั้งนี้คงยังเป็นเรื่อง Text Analysis อยู่เหมือนเคย แต่จะเป็นไปลักษะของการวิเคราะห์ประโยค์ที่เป็นข้อคิดเห็น และข้อเสนอแนะ ซึ่งจะอยู่ในส่วนของ Opinion Mining เริ่มรวบรวมความรู้ และข้อมูลพื้นฐานเหมือนเคย และส่ิงหนึ่งที่ต้องจัดการก่อนเลยคือ พจนานุกรมหรือคลังคำที่ใช้สำหรับการคัดคำภาษาไทย และคราวนี้จะต้องประกอบกับคำกำกับหน้าที่ของคำด้วย (Past of Speech) ซึ่งข้อมูลที่ดีที่สุดที่มีอยู่คือ ตัวพนานุกรมภาษาไทยของ Lexitron และ Ochid Corpus เลยเริ่มต้นที่ Lexitron ก่อนซึ่งข้อมูลคำภาษาไทยทำไว้อย่างดี ประกอบไปด้วยคำทั้งหมด คำ 40,853 คำ พร้อมกับการกำกับ Past of Speech มาให้ คำแปลภาษาอังกฤษ ตัวอย่างของคำ ฯลฯ ให้เรียบร้อยเป็นอย่างดี … Read More »

BeautifulSOUP : remove javascript

19 Oct
1book24

หาทาง remove ตัว javascript ออกจากหน้าเว็บเพจที่ใช้ liburl ดาวน์โหลดเข้ามาและประมวลผลโดยใช้ BeautifulSoup มานานแล้ว คราวนี้มาเจอโค๊ดง่ายๆ จาก Stackoverflow และทดสอบแล้วว่าใช้งานได้ดี เลขขอบันทึกเอาไว้ก่อนครับ html = urlopen(url).read() soup = BeautifulSoup(html, ‘html.parser’) to_extract = soup.findAll(’script’)     for item in to_extract:         item.extract()

Python : แก้ปัญหาการมีภาษาไทยอยู่ใน Source Code

19 Oct
Screen Shot 2558-10-19 at 2.18.31 PM

วันนี้เจอปัญหาเล็กน้อยเกี่ยวกับกับใส่ภาษาไทยไว้ในตัว Source Code ของ Python เช่น url = ‘http://clonedbabies.com/category/สมุนไพรไทย’ พอมีภาษาไทยอยู่ใน Source Code แบบนี้จะเจอ error message คือ SyntaxError: Non-ASCII character ‘\xe0’ เลยค้นทางแก้ไขจาก Stackoverflow เจอทางแก้ที่ง่ายมากๆ โดยใส่ # -*- coding: utf-8 -*- ใว้บน Source Code เลย #!/usr/local/bin/python # -*- coding: utf-8 -*-

ความก้าวหน้าในการพัฒนา Web Crawler ด้วย Scrapy

15 Oct
Screen Shot 2558-10-15 at 10.39.57 PM

จากผลของการที่ใช้ ทดลองใช้ Scrapy เมื่อคราวที่แล้ว เริ่มมั่นในและตัดสินใจว่าจะใช้ Scrapy เป็น Framework หลักในการพัฒนาตัว Web Crawler สำหรับการวิจัย เว้นไปนานวันนี้เลยกลับมาต่องานที่ทำค้างไว้ เท่าที่ลองทำดูหากทำตามตัวอย่าง How-to ที่มีอยู่ใน Tutorial ของ Scrapy จะเจอ Error หลายๆ อย่างเลยทดสอบไปเรื่อย เริ่มเข้าใจมันมากขึ้นแล้ว ผลมาลงตัวที่โค๊ดชุดนี้น่าจะเจอปัญหาน้อยสุด เลยบันทึกเอาไว้ก่อนหากเจอปัญหาอะไรจะได้ไม่ต้องเริ่มกันใหม่อีก import scrapy from TextMining.items import DmozItem class DmozSpider(scrapy.Spider):     name = "phisan"   … Read More »

โค๊ดสำหรับดึงข้อมูลจากเว็บไซต์ และประมวลผลด้วย BeautifulSOUP

15 Oct
Screen Shot 2558-10-15 at 2.40.46 PM

บันทึกเอาไว้กันลืม จะได้ไม่ต้องมาเริ่มใหม่กันบ่อยๆ อีก เป็นการโหลดหน้าเว็บเพจด้วย urllib และนำมาประมวลผลเอา HTML Tag ออกไปด้วย BeautifulSOUP 4 จากนั้นบันทึกข้อมูลลงไฟล์เพื่อไว้ใช้สำหรับประมวลผลต่อ เดี๋ยวค่อยพัฒนาต่อกันไปเรื่อยๆ ครับ from bs4 import BeautifulSoup from urllib import urlopen from urlparse import urlparse def getWeb(url):     html_doc = urlopen(url).read()     soup = BeautifulSoup(html_doc, ‘html.parser’)   … Read More »

เริ่มต้นใช้งาน BeautifulSoup 4

22 Jul
1book24

ถ้าว่าด้วยเรื่องของ Network Programming นั้นยังไงภาษา Python ก็อยู่ในใจอันดับหนึ่งมาเสมอครับ ช่วงนี้ห่างหายไปจากการเขียนโปรแกรมมาสักพักใหญ่ๆ หรือห่างหายมานานเลยก็ว่าได้ เนื่องจากมีลูกมือให้ชี้นิ้วสั่งได้ดังใจมาตลอดก็เลยเริ่มชินกับการคิดแล้วสั่งงานตลอด ตอนนี้ต้องเร่ิมพัฒนางานวิจัยใหม่ๆ ขึ้นมาบ้างเริ่มจากสิ่งที่อยากทำ และสิ่งที่ได้รับทุนวิจัยมาแล้วและต้องปฏิบัติให้ได้ตามข้อเสนอการวิจัยที่ได้เสนอไป สำหรับวันนี้เริ่มพัฒนางานตามความต้องการคือ ดึงข้อมูลที่อยู่บนเว็บไซต์เข้ามาเพื่อทำการวิเคราะห์เนื้อหาที่อยู่บนเว็บไซต์ เครื่องมือที่อำนวยความสะดวกที่ดีที่สุดในตอนนี้คงหนีไม่พ้น BeautifulSoup v.4 กับ urllib แต่ทดลองดังข้อมูลจากเว็บไซต์เข้ามาด้วย urllib.urlopen และ strip html tags ออกไป ปรากฏเจอปัญหาเรื่อง error เล็กน้องเรื่องของการเข้ารหัสแบบ unicode ซึ่งลองค้นข้อมูลเพื่อหาทางแก้ไข พอทางแก้ที่ดีจาก Stack Overflow text = u”.join(text).encode(’utf-8’).strip() สำหรับโค๊ดตัวเต็มที่ทดสอบทำวันนี้คือ from bs4 … Read More »