ยินดีต้อนรับคุณ, บุคคลทั่วไป กรุณา เข้าสู่ระบบ หรือ ลงทะเบียน

เข้าสู่ระบบด้วยชื่อผู้ใช้ รหัสผ่าน และระยะเวลาในเซสชั่น

ThaiSEOBoard.comพัฒนาเว็บไซต์Programmingสอบถามหน่อยครับ อยากดึงตารางคะแนนฟุตบอล
หน้า: [1]   ลงล่าง
พิมพ์
ผู้เขียน หัวข้อ: สอบถามหน่อยครับ อยากดึงตารางคะแนนฟุตบอล  (อ่าน 1922 ครั้ง)
0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้
WP-design
ก๊วนเสียว
*

พลังน้ำใจ: 32
ออฟไลน์ ออฟไลน์

กระทู้: 280



ดูรายละเอียด
« เมื่อ: 27 กรกฎาคม 2015, 19:31:34 »

อยากดึงตารางคะแนนฟุตบอล จาก mthai มาแสดงมันต้องมีหลักการดึงข้อมูลมายังไงครับ หรือมีใครรับทำไหมครับ
บันทึกการเข้า
Misaka
Newbie
*

พลังน้ำใจ: 5
ออฟไลน์ ออฟไลน์

กระทู้: 91



ดูรายละเอียด เว็บไซต์
« ตอบ #1 เมื่อ: 27 กรกฎาคม 2015, 20:08:46 »

ใข้ curl ดึงครับ
บันทึกการเข้า
~อิคคิวซัง~
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 148
ออฟไลน์ ออฟไลน์

กระทู้: 1,052



ดูรายละเอียด เว็บไซต์
« ตอบ #2 เมื่อ: 27 กรกฎาคม 2015, 20:24:06 »

get content มาได้ครับเอามาให้หมดละมาเขียน js/css จัดการข้อมูลที่ได้มาเอา
บันทึกการเข้า

อยากสร้างบ้านพักตากอากาศแนะนำที่ดินนครนายก เพราะว่าที่ดินนครนายก ราคาถูก ธรรมชาติสมบูรณ์และยังมี ที่ดินนครนายก ติดเขา สร้างรีสอร์ทสร้างบ้านพักรับร้องฟินเลย

สร้างเซลเพจ ยิงโฆษณาขายสินค้าด้วยSale Page พร้อมระบบบริหารจัดการออเดอร์ง่ายๆได้ที่ OnePage.Sale
gd,lN
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 96
ออฟไลน์ ออฟไลน์

กระทู้: 1,743



ดูรายละเอียด เว็บไซต์
« ตอบ #3 เมื่อ: 27 กรกฎาคม 2015, 20:28:44 »

curl ดึงได้ดีแบบไม่โดนบล็อค
บันทึกการเข้า

A-LAND
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 120
ออฟไลน์ ออฟไลน์

กระทู้: 2,139



ดูรายละเอียด
« ตอบ #4 เมื่อ: 27 กรกฎาคม 2015, 20:32:13 »

curl + preg_match อยากได้ส่วนใหนก็เอามาแค่ส่วนนั้น
บันทึกการเข้า
WP-design
ก๊วนเสียว
*

พลังน้ำใจ: 32
ออฟไลน์ ออฟไลน์

กระทู้: 280



ดูรายละเอียด
« ตอบ #5 เมื่อ: 27 กรกฎาคม 2015, 21:19:31 »

curl มันใช้ยังไงครับ ขอตัวอย่างค่าวๆหน่อยครับจะดึงจากตารางนี้มา

http://sport.mthai.com/league-table/la-liga

เราจะตัดเอาแต่ตารางต้องเขียนยังไงครับ


โค๊ด:
<?php
// Create a curl handle
$ch curl_init(&#39;http://sport.mthai.com/league-table/la-liga&#39;);
// Execute
$ret curl_exec($ch);
// Close handle
curl_close($ch);
?>


<?php
// Create a curl handle
$ch = curl_init('http://sport.mthai.com/league-table/la-liga' );
// Execute
$ret = curl_exec($ch);
// Close handle
curl_close($ch);
?>
« แก้ไขครั้งสุดท้าย: 27 กรกฎาคม 2015, 21:54:23 โดย WP-design » บันทึกการเข้า
seowizard
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 102
ออฟไลน์ ออฟไลน์

กระทู้: 1,117



ดูรายละเอียด เว็บไซต์
« ตอบ #6 เมื่อ: 27 กรกฎาคม 2015, 22:02:06 »

ลองดูตัวอย่างนี้ครับ ใช้ curl + simple html dom


โค๊ด:
//base url
$base = 'https://play.google.com/store/apps';

$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_URL, $base);
curl_setopt($curl, CURLOPT_REFERER, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

// Create a DOM object
$html_base = new simple_html_dom();
// Load HTML from a string
$html_base->load($str);

//get all category links
foreach($html_base->find('a') as $element) {
    echo "<pre>";
    print_r( $element->href );
    echo "</pre>";
}

$html_base->clear();
unset($html_base);


โค๊ด:
http://simplehtmldom.sourceforge.net/
บันทึกการเข้า
nscyber
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 50
ออฟไลน์ ออฟไลน์

กระทู้: 1,165



ดูรายละเอียด
« ตอบ #7 เมื่อ: 27 กรกฎาคม 2015, 23:20:26 »

ลองดูตัวอย่างนี้ครับ ใช้ curl + simple html dom


โค๊ด:
//base url
$base = 'https://play.google.com/store/apps';

$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_URL, $base);
curl_setopt($curl, CURLOPT_REFERER, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

// Create a DOM object
$html_base = new simple_html_dom();
// Load HTML from a string
$html_base->load($str);

//get all category links
foreach($html_base->find('a') as $element) {
    echo "<pre>";
    print_r( $element->href );
    echo "</pre>";
}

$html_base->clear();
unset($html_base);


โค๊ด:
http://simplehtmldom.sourceforge.net/


ตัว curl ตัวนี้มันจะดึงแบบ realtime ไหมครับ คือแบบม่ต้องคอยปั่นไปดึงมาถ้าอีกฝั่งอัพเดทของเราก็อัพเดท
บันทึกการเข้า
seowizard
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 102
ออฟไลน์ ออฟไลน์

กระทู้: 1,117



ดูรายละเอียด เว็บไซต์
« ตอบ #8 เมื่อ: 27 กรกฎาคม 2015, 23:39:43 »

ลองดูตัวอย่างนี้ครับ ใช้ curl + simple html dom


โค๊ด:
//base url
$base = 'https://play.google.com/store/apps';

$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_URL, $base);
curl_setopt($curl, CURLOPT_REFERER, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

// Create a DOM object
$html_base = new simple_html_dom();
// Load HTML from a string
$html_base->load($str);

//get all category links
foreach($html_base->find('a') as $element) {
    echo "<pre>";
    print_r( $element->href );
    echo "</pre>";
}

$html_base->clear();
unset($html_base);


โค๊ด:
http://simplehtmldom.sourceforge.net/


ตัว curl ตัวนี้มันจะดึงแบบ realtime ไหมครับ คือแบบม่ต้องคอยปั่นไปดึงมาถ้าอีกฝั่งอัพเดทของเราก็อัพเดท


ดึงทุกครั้งที่ page load ครับ  จริง ๆผมก็ไม่ค่อยแนะนำให้ดึงทุกครั้งที่โหลดเพจนะครับ ถ้า UIP เข้ามาพร้อมกันเยอะก็เป็นงานหนักของ Server
ถ้าข้อมูลตารางคะแนนมันไม่ได้อัพเดททุกชั่วโมง ทุกนาที ดึงครั้งเดียวแล้วเก้็บลงฐานข้อมูลเอาไว้ อาจจะ 1 วันอัพเดท 1-2 ครั้งตั้งเวลาเก็บ
ตอนดึงก็ดึงจากฐานข้อมูลของเรามาแทน ก็จะดีกว่าทั้ง page load ของเรา และ server load ของเขาด้วย
บันทึกการเข้า
nscyber
Verified Seller
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 50
ออฟไลน์ ออฟไลน์

กระทู้: 1,165



ดูรายละเอียด
« ตอบ #9 เมื่อ: 27 กรกฎาคม 2015, 23:57:15 »

ลองดูตัวอย่างนี้ครับ ใช้ curl + simple html dom


โค๊ด:
//base url
$base = 'https://play.google.com/store/apps';

$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_URL, $base);
curl_setopt($curl, CURLOPT_REFERER, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

// Create a DOM object
$html_base = new simple_html_dom();
// Load HTML from a string
$html_base->load($str);

//get all category links
foreach($html_base->find('a') as $element) {
    echo "<pre>";
    print_r( $element->href );
    echo "</pre>";
}

$html_base->clear();
unset($html_base);


โค๊ด:
http://simplehtmldom.sourceforge.net/


ตัว curl ตัวนี้มันจะดึงแบบ realtime ไหมครับ คือแบบม่ต้องคอยปั่นไปดึงมาถ้าอีกฝั่งอัพเดทของเราก็อัพเดท


ดึงทุกครั้งที่ page load ครับ  จริง ๆผมก็ไม่ค่อยแนะนำให้ดึงทุกครั้งที่โหลดเพจนะครับ ถ้า UIP เข้ามาพร้อมกันเยอะก็เป็นงานหนักของ Server
ถ้าข้อมูลตารางคะแนนมันไม่ได้อัพเดททุกชั่วโมง ทุกนาที ดึงครั้งเดียวแล้วเก้็บลงฐานข้อมูลเอาไว้ อาจจะ 1 วันอัพเดท 1-2 ครั้งตั้งเวลาเก็บ
ตอนดึงก็ดึงจากฐานข้อมูลของเรามาแทน ก็จะดีกว่าทั้ง page load ของเรา และ server load ของเขาด้วย


อ่าครับผมแปลกใจตรงที่ว่ามันต่างอย่างไรกับ file_get_contents ที่ดึงแล้วมาตัดเอาส่วนที่จะเอาหรอครับ
บันทึกการเข้า
seowizard
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 102
ออฟไลน์ ออฟไลน์

กระทู้: 1,117



ดูรายละเอียด เว็บไซต์
« ตอบ #10 เมื่อ: 28 กรกฎาคม 2015, 00:13:44 »

โดยส่วนตัวผมมองว่า cURL เร็วกว่า file_get_contents อยู่หน่อย ๆนะครับ(ความรู้สึกส่วนตัวล้วน ๆ)
และยังมีเรื่องของ security รู้สึกว่า file_get_contents ก็มีข้อจำกัดในการเข้าถึงครับ เอาแบบชัวร์ผมว่า cURL ดีกว่า กำหนด user agent อะไรก็ว่าไปทำได้หมด

ทั้งหมดเป็นความเห็นส่วนตัวนะครับ
บันทึกการเข้า
hahaoo
ก๊วนเสียว
*

พลังน้ำใจ: 20
ออฟไลน์ ออฟไลน์

กระทู้: 396



ดูรายละเอียด เว็บไซต์
« ตอบ #11 เมื่อ: 28 กรกฎาคม 2015, 08:20:00 »

เข้ามาฟังด้วยครับ  wanwan017
บันทึกการเข้า

talkit
ก๊วนเสียว
*

พลังน้ำใจ: 10
ออฟไลน์ ออฟไลน์

กระทู้: 387



ดูรายละเอียด
« ตอบ #12 เมื่อ: 28 กรกฎาคม 2015, 11:45:21 »

เคยคิดหาทางอยู่ แต่ก็ดึงยากพอคว เลยหันมาทำเป็นแนวตารางบอลแทน
 wanwan011 wanwan011
บันทึกการเข้า

สวัสดีประเทศไทย
mosmf
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 61
ออฟไลน์ ออฟไลน์

กระทู้: 1,610



ดูรายละเอียด เว็บไซต์
« ตอบ #13 เมื่อ: 28 กรกฎาคม 2015, 12:58:35 »

ลองดูตัวอย่างนี้ครับ ใช้ curl + simple html dom


โค๊ด:
//base url
$base = 'https://play.google.com/store/apps';

$curl = curl_init();
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_HEADER, false);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl, CURLOPT_URL, $base);
curl_setopt($curl, CURLOPT_REFERER, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

// Create a DOM object
$html_base = new simple_html_dom();
// Load HTML from a string
$html_base->load($str);

//get all category links
foreach($html_base->find('a') as $element) {
    echo "<pre>";
    print_r( $element->href );
    echo "</pre>";
}

$html_base->clear();
unset($html_base);


โค๊ด:
http://simplehtmldom.sourceforge.net/


ขอบคุณครับ   wanwan017
บันทึกการเข้า

WP-design
ก๊วนเสียว
*

พลังน้ำใจ: 32
ออฟไลน์ ออฟไลน์

กระทู้: 280



ดูรายละเอียด
« ตอบ #14 เมื่อ: 28 กรกฎาคม 2015, 13:20:23 »

ขอบคุณครับ ที่แนะนำ มีใครรับทำไหมครับ pm เลยครับ
บันทึกการเข้า
zentrady115
หัวหน้าแก๊งเสียว
*

พลังน้ำใจ: 98
ออฟไลน์ ออฟไลน์

กระทู้: 2,342



ดูรายละเอียด เว็บไซต์
« ตอบ #15 เมื่อ: 28 กรกฎาคม 2015, 14:19:29 »

เข้ามาอ่านด้วยคน
บันทึกการเข้า

หน้า: [1]   ขึ้นบน
พิมพ์