使用来自网站的 url 抓取 html
Scraping html with urls from website
我正在使用 php 简单 html dom 从网站上抓取一些 html,其中包括几张图片。
然而图片是没有正确指向网站。例如,下面是其中一张图片的示例,您可以看到它没有指向网站。
是否可以动态更改 url 以指向网站
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);
$url="http://www.url.com";
$Chtml = file_get_html($url);
$imgurl=Chtml->find("img",0)->src;
echo $url.$imgurl;
如何连接您从中获取文档的实际 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 属性应该是固定的和可解析的(可由客户下载)。希望对您有所帮助,并且我真的理解您的问题:)
我正在使用 php 简单 html dom 从网站上抓取一些 html,其中包括几张图片。
然而图片是没有正确指向网站。例如,下面是其中一张图片的示例,您可以看到它没有指向网站。
是否可以动态更改 url 以指向网站
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);
$url="http://www.url.com";
$Chtml = file_get_html($url);
$imgurl=Chtml->find("img",0)->src;
echo $url.$imgurl;
如何连接您从中获取文档的实际 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 属性应该是固定的和可解析的(可由客户下载)。希望对您有所帮助,并且我真的理解您的问题:)