# roach-php/core

The complete web scraping toolkit for PHP.

Repository: https://github.com/roach-php/core
Canonical: https://ross.abutalabs.com/products/roach-php-core
Homepage: https://roach-php.dev
Language: PHP
License Family: other
Topics: php, web-scraping, crawling
Last push: 2025-10-27T09:24:16+00:00

## Health v2 (maintenance only)
Score: 45/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 49, release rhythm 8, longevity 100
- inputs: {"age_days": 1842, "days_push": 310, "days_rel": 530, "gap_med": null, "n_releases_24m": 1}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1455, forks 89 (observed 2026-08-28T04:04:46.847056+00:00)

## What it is
Roach is a complete web scraping and crawling toolkit for PHP, heavily inspired by Python's Scrapy. It lets developers define spiders that crawl websites, extract data via CSS selectors, and process items through a configurable pipeline of middleware and processors.

## Use cases
- scrape data from websites with php
- crawl a site and extract structured data
- extract product prices from web pages
- build a web scraper in laravel
- parse html pages with css selectors in php
- collect blog posts or news articles automatically
- pipeline and persist scraped data

## When to choose
- you need Scrapy-like scraping functionality in a PHP project
- you want a framework-agnostic scraper with optional Laravel integration
- you need extensible middleware, item processors, and extensions for scraping workflows

## When to avoid
- your stack is Python, Node.js, or another non-PHP language
- you need headless browser rendering for JavaScript-heavy sites out of the box (Browsershot support is optional)
- you only need a one-off HTTP fetch rather than a full crawling framework

## Facets
- artifact type: library
- maturity: active
- function: web-scraping, http-client, parser, etl
- domain: crawlers, web-development
- platform: php, cli, cross-platform
- tags: scrapy-inspired, spiders, item-pipeline, laravel-adapter, symfony-domcrawler, composer-package, automation, data-engineering

## Member repositories
- roach-php/core (main) score 45

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:46.847056+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:35:39.676231+00:00, confidence not recorded.
  - readme: https://github.com/roach-php/core (fetched 2026-08-28T04:04:46.847056+00:00, sha fd87af0305b1)
  - homepage: https://roach-php.dev (fetched 2026-08-29T11:44:56.511985+00:00, sha f54387bbab04)
  - site_page: https://roach-php.dev/docs/releases (fetched 2026-08-29T11:44:56.525293+00:00, sha 2db0ff204312)
  - site_page: https://roach-php.dev/docs/upgrade-guide (fetched 2026-08-29T11:44:56.527053+00:00, sha d39e3e30ac63)
  - site_page: https://roach-php.dev/docs/installation (fetched 2026-08-29T11:44:56.521851+00:00, sha 6d1096e28601)
  - site_page: https://roach-php.dev/docs/introduction (fetched 2026-08-29T11:44:56.523615+00:00, sha f65cd6bfa622)
  - site_page: https://roach-php.dev/docs/scraping-vs-crawling (fetched 2026-08-29T11:44:56.529531+00:00, sha 89ce5db2a745)
  - site_page: https://roach-php.dev/docs/spiders (fetched 2026-08-29T11:44:56.531439+00:00, sha c278afc832c6)
  - site_page: https://roach-php.dev/docs/processing-responses (fetched 2026-08-29T11:44:56.533559+00:00, sha 146532c07f61)
  - site_page: https://roach-php.dev/docs/items (fetched 2026-08-29T11:44:56.535356+00:00, sha e8ad3d26dbb1)
- Data as of 2026-08-30T08:39:29.467469+00:00.
