for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace Spatie\Crawler\Handlers;
use GuzzleHttp\Exception\RequestException;
use Spatie\Crawler\CrawlQueue\CrawlQueue;
class CrawlRequestFailed
{
/** @var \Spatie\Crawler\CrawlQueue\CrawlQueue */
protected $crawlQueue;
/** @var array[\Spatie\Crawler\CrawlObserver] */
protected $crawlObservers;
public function __construct(
CrawlQueue $crawlQueue,
array $crawlObservers
) {
$this->crawlQueue = $crawlQueue;
$this->crawlObservers = $crawlObservers;
}
public function __invoke(RequestException $exception, $index)
$crawlUrl = $this->crawlQueue->getUrlById($index);
foreach ($this->crawlObservers as $crawlObserver) {
$crawlObserver->crawlFailed(
$crawlUrl->url,
$exception,
$crawlUrl->foundOnUrl
);