PHPackages                             innmind/crawler - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. innmind/crawler

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

innmind/crawler
===============

Library to extract meaningful informations out of a webpage

6.1.0(5y ago)2978[1 issues](https://github.com/Innmind/Crawler/issues)4MITHTMLPHP ~7.4|~8.0CI failing

Since Nov 1Pushed 5y ago1 watchersCompare

[ Source](https://github.com/Innmind/Crawler)[ Packagist](https://packagist.org/packages/innmind/crawler)[ Docs](http://github.com/Innmind/Crawler)[ RSS](/packages/innmind-crawler/feed)WikiDiscussions develop Synced today

READMEChangelogDependencies (12)Versions (25)Used By (4)

Crawler
=======

[](#crawler)

[![Build Status](https://github.com/Innmind/Crawler/workflows/CI/badge.svg?branch=master)](https://github.com/Innmind/Crawler/actions?query=workflow%3ACI)[![codecov](https://camo.githubusercontent.com/3003f123185c0e7267b644b42abea371cd6d8270e46b37912cc9176c33e21a17/68747470733a2f2f636f6465636f762e696f2f67682f496e6e6d696e642f437261776c65722f6272616e63682f646576656c6f702f67726170682f62616467652e737667)](https://codecov.io/gh/Innmind/Crawler)[![Type Coverage](https://camo.githubusercontent.com/ddafbc35bf4ccd2319c2615cb9aae595d7bb5355c5587444514579adbed19df7/68747470733a2f2f73686570686572642e6465762f6769746875622f496e6e6d696e642f437261776c65722f636f7665726167652e737667)](https://shepherd.dev/github/Innmind/Crawler)

This tool allows you to extract a lot of useful informations out of a web page (may it be html, an image, or anything else).

Installation
------------

[](#installation)

```
composer require innmind/crawler
```

Usage
-----

[](#usage)

```
use function Innmind\Crawler\bootstrap;
use Innmind\OperatingSystem\Factory;
use Innmind\UrlResolver\UrlResolver;
use Innmind\Url\Url;
use Innmind\Http\{
    Message\Request\Request,
    Message\Method\Method,
    ProtocolVersion,
};
use function Innmind\Html\bootstrap as reader;

$os = Factory::build();

$crawl = bootstrap(
    $os->remote()->http(),
    $os->clock(),
    reader(),
    new UrlResolver
);

$resource = $crawl(
    new Request(
        Url::of('https://en.wikipedia.org/wiki/H2g2'),
        new Method('GET'),
        new ProtocolVersion(2, 0),
    ),
);
```

Here `$resource` is an instance of [`HttpResource`](src/HttpResource.php).

###  Health Score

33

↑

LowBetter than 72% of packages

Maintenance10

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community13

Small or concentrated contributor base

Maturity78

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~87 days

Recently: every ~274 days

Total

23

Last Release

1966d ago

Major Versions

1.0.4 → 2.0.02016-11-07

2.1.3 → 3.0.02017-03-01

3.2.4 → 4.0.02017-10-07

4.2.0 → 5.0.02019-02-10

5.0.0 → 6.0.02020-02-15

PHP version history (6 changes)1.0.0PHP &gt;=5.5

2.0.0PHP ~7.0

3.0.0PHP ~7.1

4.1.0PHP ~7.2

6.0.0PHP ~7.4

6.1.0PHP ~7.4|~8.0

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/851425?v=4)[Baptiste Langlade](/maintainers/Baptouuuu)[@Baptouuuu](https://github.com/Baptouuuu)

---

Top Contributors

[![Baptouuuu](https://avatars.githubusercontent.com/u/851425?v=4)](https://github.com/Baptouuuu "Baptouuuu (238 commits)")

---

Tags

crawler

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/innmind-crawler/health.svg)

```
[![Health](https://phpackages.com/badges/innmind-crawler/health.svg)](https://phpackages.com/packages/innmind-crawler)
```

###  Alternatives

[jaybizzle/crawler-detect

CrawlerDetect is a PHP class for detecting bots/crawlers/spiders via the user agent

2.4k104.0M278](/packages/jaybizzle-crawler-detect)[wa72/htmlpagedom

jQuery-inspired DOM manipulation extension for Symfony's Crawler

3484.1M35](/packages/wa72-htmlpagedom)[vdb/php-spider

A configurable and extensible PHP web spider

1.3k185.8k7](/packages/vdb-php-spider)[jaybizzle/laravel-crawler-detect

A Laravel package to detect web crawlers via the user agent

3302.7M18](/packages/jaybizzle-laravel-crawler-detect)[crwlr/crawler

Web crawling and scraping library.

36917.4k2](/packages/crwlr-crawler)[nmure/crawler-detect-bundle

A Symfony bundle for the Crawler-Detect library (detects bots/crawlers/spiders via the user agent)

27284.2k](/packages/nmure-crawler-detect-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
