PHP : ใช้ Regular Expression สำหรับกำจัด Style Sheet และ Javascript ที่ไม่ต้องการ

3 Jan
Screen Shot 2559-01-03 at 10.55.23 AM

ตอนนี้ต้องการใช้ PHP ประมวลผลเอกสาร Hypertext เพื่อดึงข้อมูลที่เป็นเฉพาะข้อความออกมาใช้งาน ดังนั้นสิ่งที่จำเป็นคือการกำจัด HTML Tag ออกไปให้หมด สำหรับ PHP เองก็เตรียมฟังก์ชันที่ง่ายที่สุดสำหรับการช่วยกำจัด HTML Tag ให้อยู่แล้ว คือ strip_tags() แต่จากการใช้งานงาน ปัญหาของ strip_tags() คือมันจะดึงเฉพาะ Tags มาตรฐานที่รู้จักกันดีออกไป แต่ยังคงเหลือพวก Javascript และ Inner Style Sheet เอาไว้ ดังนั้นก่อนที่จะใช้ strip_tags จึงมีความจำเป็นจะต้อง ใช้ Regular Expression ในการตรวจสอบ และกำจัด Tags ของ … Read More »

บันทึก: การสลับเวอร์ชั่น Java บน OS X

4 Nov
Screen Shot 2558-11-04 at 11.29.38 AM

วันนี้มีปัญหาน่าปวดหัว คือซอร์สโค๊ดของ LexTo ไม่สามารถรันได้บนจาวา 1.8 เลยต้องลงจาวา 1.7 เข้าไปบนเครื่องด้วย ซึ่งก็ไม่ใช่เรื่องปกติอะไรที่เครื่องคอมพิวเตอร์จะลง java sdk หลายๆ เวอร์ชั่น บนเครื่องเดียว แต่ส่ิงที่ไม่เคยทำบน OS X มาก่อนคือการสลับเวอร์ชั่นของ java ไปๆ มาๆ จะต้องทำอย่างไร ? ค้นเจอวิธีการบน Stackoverflow เป็นวิธีการที่ง่ายมมากๆ และคงต้องทำแบบนี้อยู่บ่อยๆ เลยขอจดบันทึกเอาไว้หน่อย ใช้วิธีการ set ไฟล์ .bash_profile เหมือนเดิมครับ export JAVA_HOME=$(/usr/libexec/java_home -v 1.7) setjdk() {   … Read More »

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 »

ทดลองใช้ Scrapy

6 Jul
Screen Shot 2558-07-06 at 9.17.42 PM

สำหรับตอนนี้กำลังเริ่มพัฒนางานวิจัยอีกชิ้นหนึ่ง โดยในกระบวนการวิจัยในขั้นตอนแรกต้องทำการเก็บข้อมูลที่เป็นเนื้อหาต่างๆ ที่อยู่ที่อยู่บนระบบอินเตอร์เน็ต เพื่อนำมาประมวลผล สำหรับการรวบรวมข้อมูลเนื้อหาต่างๆ ที่อยู่บนเว็บไซต์นั้นคงต้องเริ่มจาการพัฒนาตัว web crawler เพื่อทำดัชนีเว็บขึ้นมา สำหรับการทำ web cralwer ผมเรื่องใช้ Scrapy ซึ่งเป็นเฟรมเวิร์คที่มีมาตรฐานและมีการพัฒนาอย่างต่อเนื่อง ตลอดจนมีการใช้งานที่ง่าย มีเอกสารให้ศึกษา พร้อมตัวอยากประกอบมากมาย สำหรับกระบวนการติดตั้งไม่ยากนัก สามารถติดตั้งผ่าน pip ได้เลยโดย $ pip install scrapy ในกรณีสำหรับ OS X ที่ติดตั้ง scrapy แล้วเจอปัญหา error ImportError: No module named xmlrpc_client ให้ทำการแก้ไขปัญหาคือ $ … Read More »