|
หัวข้อ: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: webdevils ที่ 14 สิงหาคม 2008, 15:00:16 สคริปที่ดึงข้อมูลเว็บอื่นมาลงใส่ดาต้าเบสหรือสร้างหน้าhtmlของเรา พวกสคริปประเภทนี้เขาเรียกเป็นภาษาอังกฤษว่าอะไรหรอครับ แล้วแนวคิดมันเป็นยังไงครับ ใช้ฟังค์ชั่นประเภทไหนครับ อยากศึกษาครับ ลองphpมาได้ไม่นาน ไม่รู้จะไปลองฟังค์ชั่นไหน :-*
หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: m-16-150 ที่ 14 สิงหาคม 2008, 15:10:34 โค๊ด: <?php require("xxxxxxxxx.php"); ?>เปลี่ยน xxxxxxxxx.php เป็น ชื่อไฟร์หรือ url ที่เราอยากให้ผุดขึ้นในเว็นเรา ::) หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: navico ที่ 14 สิงหาคม 2008, 16:01:01 เคยเขียนมั่วๆ อยู่ทีหนึ่ง
ต้องขอบคุณ auto post Flixya หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: ball6847 ที่ 14 สิงหาคม 2008, 16:11:56 เรียกว่า 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 นะคับ อาจจะวิบัติ โดยเฉพาะถ้าไม่ใช่ของเรา :P หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: EThaiZone ที่ 14 สิงหาคม 2008, 22:19:35 Curl ไม่ใช่ตัวเลือกที่ดีที่สุดนะครับ
ถ้่าต้องการเร็วมากจริงๆ ต้อง fsockopen ไปเลย เขียนสด แถมตัว Curl หลายครั้งก็เรียก dns ช้ากว่า (ผมเคยลอง loopback เข้าโดเมนตัวเอง ผลคืออืด ต้อง fsockopen กลับเร็วกว่า) แถม Curl มีบั๊กอยู่ เช่น 100 continues เล่นเอาผมเครียดไปวันหนึ่งแน่ะ (ถ้าใช้ sniffer แต่แรกก็จบไม่แล้ว :-X) หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: kero ที่ 14 สิงหาคม 2008, 22:54:46 ใช้แต่ไอ้นี่ กับ file($filename) strpos substr
;D regular ไม่รู้จัก ทำไม่เป็น หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: tinnoi ที่ 14 สิงหาคม 2008, 23:28:12 ได้ความรู้เยอะเลยครับ
ปกติ เคยเล่นแต่ file_get_contents ครับ หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: manteeen ที่ 15 สิงหาคม 2008, 04:06:05 ดีครับ ได้ความรู้มากเลย :-*
หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: etgsgroup ที่ 15 สิงหาคม 2008, 05:46:09 ขอบคุณครับเมื่อใช้อย่างเดียว ไม่รู้เลย ว่าอะไรเป็นอะไร :-* :-* :-* ได้ตาสว่างขึ้นตั้งเยอะ ;D ;D ;D
หัวข้อ: Re: [PHP]สคริปที่ดึงข้อมูลเว็บ เริ่มหัวข้อโดย: EThaiZone ที่ 15 สิงหาคม 2008, 11:32:45 ผมเคยเขียนตัวอย่างไว้ในกระทู้นะ
http://www.thaiseoboard.com/index.php/topic,33933.msg450473.html#msg450473 ลองไปดูได้ ใช้ได้จริง :P |