เรียกว่า scrapper คับ
แนวคิด
- โหลดเพจลงมาแล้วจัดการคัดเอาเฉพาะข้อมูลที่ต้องการแยกออกมาด้วย regular expression หรือถ้าไม่รู้วิธีใช้ regular expression ก็ต้องใช้ strpos กับ substr ในการตัดเอาข้อมูลออก ซึ่งลำบากกว่า regular expression เยอะเลย
ฟังก์ชั่น แยกชัดๆก็ 2 ประเภทคือฟังก์ชั่นที่ต้องใช้ในการดึงหน้าเว้บ กับฟังก์ชั่นที่ใช้ในการตัดข้อมูลออกมา
ฟังก์ชั่นที่ใช้ในการดึง
- fsockopen , fgets , fputs , fclose ... พวกนี้ต้องใช้เป็นชุดถึงจะดึงหน้าเพจลงมาได้ ต้องมีความรู้ในเรื่อง HTTP พื้นฐานด้วย
- fopen , fread , fwrite , fclose อันนี้คือการเปิดไฟล์นะ แต่มันสามารถเปิด url ได้ด้วย ต้องใช้เป็นชุดเหมือนกัน บางโฮสท์จะปิด (allow_url_fopen) ซึ่งเราจะเปิด url ด้วยฟังก์ชั่นนี้ไม่ได้
- file_get_contents อันนี้เป็นฟังก์ชั่นสำเร็จจากข้างบน (fopen) เหมือนกันถ้า โฮสท์ปิด (allow_url_fopen) ก็ใช้ไม่ได้
- curl >> ทำงานเร็วสุด แล้วเหมือนจะเป็นมาตราฐานของทุกโฮสท์ เหมือนจะให้ใช้อันนี้เป็นหลักในการดึงข้อมูล ใช้ง่ายแต่ต้องใช้เวลาศึกษา option มันสักนิด เพราะทำอะไรได้เยอะแยะมาก
**ถ้าดึงข้อมูลจากเว็บที่เป็น https เครื่องต้องมี(เปิด) openssl
นอกจากที่พูดมาข้างบนยังมี พวก class หรือ pear package ที่ทำหน้าที่พวกนี้ แต่ส่วนใหญ่ใช้ fsockopen ทั้งนั้น
แค่นี้ก็พอมั้ง
ปล. ไม่ได้ชำนาญนะ แต่ผมถนัดเรื่องนี้ที่สุดใน PHP ไปได้ทุกที่ที่ไม่มี captcha (captcha เท่านั้นที่เอาอยู่)
<?php require("xxxxxxxxx.php"); ?>
เปลี่ยน xxxxxxxxx.php เป็น ชื่อไฟร์หรือ url ที่เราอยากให้ผุดขึ้นในเว็นเรา
:
อันนี้อย่าเอามาเปิด url นะคับ อาจจะวิบัติ โดยเฉพาะถ้าไม่ใช่ของเรา