首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从DOM获取HTML并将其存储在MySql中

从DOM获取HTML并将其存储在MySql中
EN

Stack Overflow用户
提问于 2013-08-03 20:59:52
回答 2查看 194关注 0票数 0

我试图从页面中获取某个div的内容,并将其存储在我的db中。我做了以下工作:

代码语言:javascript
运行
复制
$html = file_get_contents($url);
$dom = new SmartDOMDocument();
$dom->loadHTML($html);    
$div_tags = $dom->getElementsByTagName('div');
foreach ($div_tags as $element) {
    if(strpos($element->getAttribute('itemprop'), 'description') !== false)
        $description = $element->nodeValue;
}

我使用SmartDOMDocument是因为它处理UTF-8比DOMDocument更好。

现在,这将给我没有标记的text of the element。我试过这个解决方案,它确实给了我带有标签的文本。但是,当我试图将它存储在我的数据库中时,我做不到!

是否有更好的方法从元素中获取utf-8 text with the tags并将其正确存储在db中?

编辑:插入语句非常简单:

代码语言:javascript
运行
复制
$q = "INSERT INTO `MyTable`.`content` (`description`) VALUES ('$description')";
$r=mysql_query($q); 
var_dump($r);
EN

回答 2

Stack Overflow用户

发布于 2013-08-03 21:05:32

尝试var_dump-ing $element,看看它是否具有nodeValue以外的其他属性。还应该有一些东西,如HTMLvalue、getHTML或其他类似的属性。

票数 0
EN

Stack Overflow用户

发布于 2013-08-03 21:36:29

尝试使用textContent而不是nodeValue。不要忘记转义(我假设在本例中使用mysql_real_escape_string )

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18037271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档