首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >网页爬虫摘录链接元素

网页爬虫摘录链接元素
EN

Stack Overflow用户
提问于 2018-07-01 20:16:10
回答 2查看 81关注 0票数 0

我想从网页中提取元素。

代码语言:javascript
复制
$html = file_get_contents($link);

该函数返回完整的html文件,我只想要内部和外部链接将它们保存在数据库中。

代码语言:javascript
复制
$sql = "INSERT INTO prueba (link, title, description) VALUES (?, ?, ?)";

//preparando los datos
$query = $pdo->prepare($sql);

//orden de ejecucion
$result = $query->execute([
  $link,
  $title_out,
  $description
]);

在这里,我已经设法提取描述和标题,我设法将它们放在数据库中,但我想提取所有的外部和内部链接。一列中的内部链接,另一列中的外部链接。我已经在数据库中创建了两个列。

EN

回答 2

Stack Overflow用户

发布于 2018-07-01 20:20:25

我建议使用DOM-Parser库,例如:

解析HTML,只对所有锚(a标记)进行“查询”。

例如,尝试使用regexes自己提取它们更容易出错。

票数 0
EN

Stack Overflow用户

发布于 2018-07-01 21:01:25

HTML报废

为此,我建议您使用开放源码库,这些库提供帮助函数导航到DOM。没有这一点,您将不得不维护更多的代码。如果您想要管理删除多个页面,您将不得不在每次更新页面时更新regex查询。

你不会想要^^‘

"古特“库中的一个示例(我希望您在+PHP5.5中)

代码语言:javascript
复制
$links = [];
$crawler->filter('a')->each(function ($node) {
    var_dump($node->attr('href'));
    $links[] = $node->attr('href');
});

$links现在包含页面中的所有链接(属性)

有关节点旅行的更多示例,请参见此链接

使用数据库逻辑来持久化此数据。

对不起,如果Goutte的代码有错误,我不会经常使用它

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

https://stackoverflow.com/questions/51126712

复制
相关文章

相似问题

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