gpt4 book ai didi

php - 结合 CURL 和简单的 html dom

转载 作者:可可西里 更新时间:2023-11-01 13:43:04 24 4
gpt4 key购买 nike

我一直在使用 CURL 和 Simple HTML DOM 来抓取网站。我发现 CURL 更适合抓取网站。但是我真的很喜欢 Simple HTML DOM 的简单性。所以我想为什么不把两者结合起来,我试过了:

require_once('simple_html_dom.php');

$url = 'http://news.yahoo.com/';

$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$curl_scraped_page = curl_exec($ch);

$html = new simple_html_dom();
$html->load($curl_scraped_page);


foreach($html->find('head') as $d) {
$d->innertext = "<base href='$url'>" . $d->innertext;
}

echo $html->save();

我已经尽力了,但还是不行。我还能尝试什么?

最佳答案

尝试改变这个:

$html->load($curl_scraped_page);

对此:

$html->load($curl_scraped_page, true, false);

问题是 simple_html_dom 默认删除所有\r\n,在这种情况下它会破坏 javascript 代码,因为 yahoo 不会以分号结束它。

您可以在浏览器控制台看到这个错误,您还可以看到 simple_html_dom 删除了查看源代码的换行符。

关于php - 结合 CURL 和简单的 html dom,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16622293/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com