url = $url; $this->client = new \GuzzleHttp\Client([ 'timeout' => 60, 'verify' => false, 'headers' => [ 'user-agent' => 'Dalvik/2.1.0 (Linux; U; Android 6.0.1; D5803 Build/MOB30M.Z1)', ], ]); } /** * @param string $url * * @return \App\Parser|null */ public static function factory(string $url) { if (false !== strpos($url, 'leboncoin.fr')) { return new LBC($url); } if (false !== strpos($url, 'seloger.com')) { return new SeLoger($url); } if (false !== strpos($url, 'pap.fr')) { return new Pap($url); } return null; } /** * @return \App\ParsedHome */ abstract public function parse(): ParsedHome; }