我正在使用php简单的html dom从webite抓取一些html,其中包括几个图像。
但是图像没有正确指向网站。例如,下面是其中一个图像的示例,您可以看到它没有指向网站。
是否可以动态更改网址以指向网站
http://www.url.com/bilder/flags_long/United States.gif
html示例
<img src="/bilder/flags_long/United States.gif" align="absmiddle" title="United States" alt="United States" border="0">
示例代码:
include('simple_html_dom.php');
$sum_gosu = file_get_html("http://www.gosugamers.net/counterstrike/news/30995-starladder-is-back-with-the-thirteenth-edition-of-starseries");
$gosu_full = $sum_gosu->find("//div[@class='content light']/div[@class='text clearfix']/div", 0);
答案 0 :(得分:1)
如何连接从中获取文档的实际URL以及相对图像路径。只是为了给出一个想法(这没有经过测试,你肯定应该做一些检查,在某些情况下,图像src属性是相对的还是绝对的):
<?php
$url = 'http://www.url.com/';
$html = file_get_html($url);
$images = array();
foreach($html->find('img') as $img) {
// Option 1: Fill your images array (in case you only need the images)
$images[] = rtrim($url, '/') . '/' . ltrim($img->src, '/');
// Option 2: Update $img->src inside your $html document
$img->src = rtrim($url, '/') . '/' . ltrim($img->src, '/');
}
?>
更新根据您的示例代码,我的示例如下所示:
<?php
include('simple_html_dom.php');
$sum_gosu_url = "http://www.gosugamers.net/counterstrike/news/30995-starladder-is-back-with-the-thirteenth-edition-of-starseries";
$sum_gosu = file_get_html($sum_gosu_url);
$gosu_full = $sum_gosu->find("//div[@class='content light']/div[@class='text clearfix']/div", 0);
foreach($gosu_full->find('img') as $img) {
$img->src = $sum_gosu_url . $img->src;
}
?>
之后,$ gosu_full文档中的img src属性应该是可修复的并且可以解析(可由客户端下载)。希望有帮助,我实际上是在理解你的问题:)
答案 1 :(得分:0)
$url="http://www.url.com";
$Chtml = file_get_html($url);
$imgurl=Chtml->find("img",0)->src;
echo $url.$imgurl;