1

我正在使用简单的 html dom 从网站中提取数据并对其进行解析。但是,我无法将样式标签中的实际路径之一更改为完整路径。我尝试了很多组合。

我在这里找到了一篇使用简单 html dom 的 PEAR 脚本的帖子,它已在除以下链接之外的所有链接上工作。

require_once 'includes/URL2.php';

$uri = new Net_URL2('http://www.stormcinemas.ie'); // URI of the resource
$baseURI = $uri;

foreach ($htmlcss->find('background[url]') as $elem) {
    $elem->url = $baseURI->resolve($elem->url)->__toString();
}

foreach ($html->find('*[src]') as $elem) {
    $elem->src = $baseURI->resolve($elem->src)->__toString();
}
foreach ($html->find('*[href]') as $elem) {
    if (strtoupper($elem->tag) === 'BASE') continue;
    $elem->href = $baseURI->resolve($elem->href)->__toString();
}
foreach ($html->find('form[action]') as $elem) {
    $elem->action = $baseURI->resolve($elem->action)->__toString();
}

样式.css

<style> 
div.spriteImgSmall { background: url(/images/css_sprites/film_sprites/smallimages_sprite.jpg); } 
</style>

谢谢

4

1 回答 1

3

此处提供了解决方案,但不幸的是已被删除。再次感谢,它确实解决了我的问题。

这是供将来参考的。

$htmlcss = preg_replace('/url\(\s*[\'"]?\/?(.+?)[\'"]?\s*\)/i', 'url('.
        $baseURI.'/$1)', $htmlcss);

如果有人知道如何在 css 上使用简单的 html dom,我仍然会感兴趣,因为网络上没有任何内容。这甚至可能是不可能的。

于 2010-12-13T01:43:50.173 回答