lalbert/daric

Simple and configurable PHP web spider and web scraper

Maintainers

Details

github.com/lalbert/daric

Source

Issues

Installs: 29

Dependents: 0

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 0

Open Issues: 0

pkg:composer/lalbert/daric

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

This package is auto-updated.

Last update: 2025-09-25 06:30:58 UTC


README

Daric is a Simple and configurable PHP web spider and web scraper written under the Goutte library.

Installation

The best way to install Daric it use composer

composer require lalbert/daric

Usage

There are two components : Scraper and Spider.

Scraper

Scaper is used to extract, clean, and format web page data.

It uses extractors, cleaners and formatters to achieve its goals.

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

Spider is used to crawl a website to scrape some web page data.

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();
  ...
}

Licence

Daric is licensed under the MIT License - see the LICENSE file for details