lalbert/daric

简单且可配置的PHP网页爬虫和网页抓取器

v0.1.0 2016-08-22 08:31 UTC

This package is auto-updated.

Last update: 2024-09-25 04:19:01 UTC


README

Daric 是一个基于 Goutte 库编写的简单且可配置的PHP网页爬虫和网页抓取器。

安装

安装 Daric 的最佳方式是使用 composer

composer require lalbert/daric

使用方法

有两个组件: ScraperSpider

抓取器

Scaper 用于提取、清理和格式化网页数据。

它使用提取器、清理器和格式化器来实现其目标。

use Daric\Scraper;
use Daric\Extractor\CrawlerExtractorFactory;

$scraper = new Scrapper('http://website.tld');
$scraper->setExtractors([
  'meta_title' => CrawlerExtractorFactory::create('title@_text'), // get text node of <title></title>
  'meta_description' => CrawlerExtractorFactory::create('meta[name="description"]@content'), // get attribute "content" of <meta name="description" />
  'list' => CrawlerExtractorFactory::create('#content ul.list li@_text("array")') // get all text node of li item. Return an array
]);

$doc = $scraper->scrape(); // return Daric\Document

echo $doc->getData('meta_title');
print_r($doc['list']);

爬虫

Spider 用于爬取网站以抓取一些网页数据。

use Daric\Spider;
use Daric\Scraper;
use Daric\Extractor\CrawlerExtractorFactory;

$spider = new Spider('http://website.tld');

$spider->setLinkExtractor(CrawlerExtractorFactory::create('#content article a.link@href("array")'));
$spider->setNextLinkExtractor(CrawlerExtractorFactory::create('#nav a.next@href'));

foreach ($spider as $pageUri) {
  $scraper = new Scraper($pageUri, $extractors, $cleaners, $formatters);
  $doc = $scraper->scrape();
  ...
}

许可证

Daric 根据 MIT 许可证授权 - 详细信息请参阅 LICENSE 文件