laravel 5 的简单 html dom 解析器
Posted
技术标签:
【中文标题】laravel 5 的简单 html dom 解析器【英文标题】:Simple html dom parser for laravel 5 【发布时间】:2015-05-17 23:51:24 【问题描述】:在哪里可以找到 ? 我正在寻找这样的想法:http://simplehtmldom.sourceforge.net/manual.htm
【问题讨论】:
Packagist 上有 ported packages available 可以用 Composer 安装并在 Laravel 中使用?或者你需要 Laravel 服务提供者和/或 Facades? 【参考方案1】:我推荐 paquettg,它很简单,也允许更新 dom
https://packagist.org/packages/paquettg/php-html-parser?fbclid=IwAR0j7MMlMc5eY3qQfHbXuqd0AVocjpIoHBxUJWgUIUWRuAeDsFOEDLCIdwk
【讨论】:
【参考方案2】:我推荐FriendsOfPHP/Goutte,它当之无愧是GitHub上最受欢迎的PHP爬虫之一。
控制器
$crawler->filter('a[class="o_title"][href]')->each(function ($node)
$hrefs[] = $node->attr('href');
);
return view('some-template', ['hrefs' => $hrefs]);
查看
@foreach ($hrefs as $href)
$href
@endforeach
你的情况是:
$crawler = $client->request(
'GET',
'http://www.oglaszamy24.pl/ogloszenia/nieruchomosci/domy/?std=1&results=100000'
);
$text = $crawler->filter('.resultpages_current')->text();
$numPages = intval(preg_replace('/[^0-9]/', '', $text));
【讨论】:
如何获取href列表。我像这样使用 somethink 但它返回 1 行: $info = $crawler->filter('a[class="o_title"][href]')->attr('href');$crawler->filter('a[class="o_title"][href]')->each(function ($node) $hrefs[] = $node->attr('href'); );
不错。但是我如何才能在视图中显示它呢?
谢谢,也许你能告诉我,我如何计算网站上有多少页面(例如。)
你能给我你要解析的url,以便我查看html并给你确切的答案吗?以上是关于laravel 5 的简单 html dom 解析器的主要内容,如果未能解决你的问题,请参考以下文章