使用带有ajax的simple_html_dom

时间:2015-02-11 13:32:44

标签: php html ajax

我正在使用' simple_html_dom'进行网页解析。然而,库没有成功解析其内容是通过ajax获得的html。有没有办法解决这个问题?

PHP代码:

<?php
require_once '../library/Simple_HTML_DOM/simple_html_dom.php';

// Create DOM from URL or file
$html = file_get_html('http://www.playnow3dgames.com/genre.php?id=sports');

// Find all images 
foreach($html->find('img') as $element){
echo $element->src . '<br>';
}
?>

仅打印边缘和顶部的图像(html native),并且不解析中心图像(使用ajax)。

1 个答案:

答案 0 :(得分:-1)

试试这个

<?php
require_once '../library/Simple_HTML_DOM/simple_html_dom.php';

// Create DOM from URL or file
$html = file_get_html('http://www.playnow3dgames.com/listing.php?genre=sports&order=date');

// Find all images 
foreach($html->find('img') as $element){
    echo $element->src . '<br>';
}
?>

===更新====

实际上,这是一个iframe,它不是ajax。 在http://www.playnow3dgames.com/genre.php?id=sports的中心是框架:http://www.playnow3dgames.com/listing.php?genre=sports&order=date

你可以看到url的结构:

http://www.playnow3dgames.com/listing.php?genre=sports&order=date

在这里:genre=sports

这是真实的网址:http://www.playnow3dgames.com/genre.php?id=sports

您会看到id=sportsgenre=sports

的匹配

要获取每个页面,您只需要更改genre=genre_name。例如:

http://www.playnow3dgames.com/genre.php?id=strategy

主框架将是:

www.playnow3dgames.com/listing.php?genre=strategy&order=date

如果您想获取第1,2,3页...,则需要添加page=page_number。例如:获取

的第2页
http://www.playnow3dgames.com/genre.php?id=strategy

网址将是:

http://www.playnow3dgames.com/listing.php?genre=strategy&page=2&order=date