简单的PHP DOM解析器不';t在开关箱中工作(PHP)

简单的PHP DOM解析器不';t在开关箱中工作(PHP),php,parsing,screen-scraping,simple-html-dom,Php,Parsing,Screen Scraping,Simple Html Dom,我对简单的PHP DOM解析器有一个问题。我基本上得在一个目录网站上搜寻图片和标题 该网站是必须刮是 我已经想出了以下代码来实现它(这将通过AJAX调用): 这就是“函数”文件,不起作用的部分是最后一种情况 我不知道这里出了什么问题,所以我在一个单独的文件中测试了它(最后一个案例)(我将它从iFrame中获得的URL放入其中(该部分确实有效): 就像我说的,第一部分应该返回与第二部分相同的结果(如果您添加?function=images&subcat=dichte-kast),但是它没有

我对简单的PHP DOM解析器有一个问题。我基本上得在一个目录网站上搜寻图片和标题

该网站是必须刮是

我已经想出了以下代码来实现它(这将通过AJAX调用):


这就是“函数”文件,不起作用的部分是最后一种情况

我不知道这里出了什么问题,所以我在一个单独的文件中测试了它(最后一个案例)(我将它从iFrame中获得的URL放入其中(该部分确实有效):


就像我说的,第一部分应该返回与第二部分相同的结果(如果您添加?function=images&subcat=dichte-kast),但是它没有返回。我猜这是因为我多次使用解析器


有人对我有什么建议吗?

问题在于,您的
$url2
变量包含html实体,当您将其连接到根url时,结果不是有效的url。因此,
file\u get\u html()
函数将不会检索您期望的url(以及数据),但会检索到一些不同的内容

您的问题的一个快速解决方案是,但您可能也希望了解调试。它可以很容易地应用
var_dump();
到您正在使用的每个变量,并查看输出与预期输出的不同之处


您可能还想检查一些安全问题。编写
$subcat=$\u GET['sub\u cat']
绝不比使用
$\u GET['sub\u cat']更安全
直接。

我不确定我是否完全理解了这个问题,但我能收集到的信息是,您正试图从给定网页中获取一些图像及其相关标题,然后保存它们?如果是这样的话,那么这里有一些值得思考的东西(抱歉,不能更具体)

使用file_get_contents获取html内容

$html = file_get_contents('www.someurl.com');
然后preg_match()所有你可能需要的图像标签和其他数据


我想你的问题是从你想要的内容中剥离html内容

你实际上没有检查url检索是否有效。
$url2
中是否有有效的url?是否有一些页面内容?你的脚本完全取决于服务器的网络连接是否稳定以及远程站点可用,并没有任何错误的余地。我知道:),这只是一个刮片测试,我会在它上线之前修复所有这些。他已经在使用DOM解析器来做这件事了。此外,他的问题不在于他的解析方法。啊,我误解了这个问题。请查看,单击一个类别,然后单击左侧的子类别。我所要做的就是获取产品图片的src以及JSON格式的标题,这样我就可以使用它们了。谢谢,我知道这有点像,是的,我知道整个安全问题。一旦我有了一个基本的工作版本,我就会修复这些问题。如果我的答案对你有帮助,请批准我的答案:)。
<?php
include_once "simple_html_dom.php";

$fullurl = "http://www.pinesite.com/meubelen/prog/browse.php?taal=nl&groep=18&subgroep=26";

$html = file_get_html($fullurl);
$titles = $html->find('p');
$images = $html->find('img');
$output='';
$i=0;
foreach ($images as $image) {
  $item['title'] = $titles[$i]->plaintext;
  $item['thumb'] = $image->src;
  $item['image'] = str_replace('thumb_','',$image->src);
  $output[] =$item;
  $i++;
}
echo json_encode($output);
?>
$html = file_get_contents('www.someurl.com');
 $matches = preg_match('<img>*<\/img>', $html); # this is a guess
http://www.edmondscommerce.co.uk/php/php-save-images-using-curl/