public static function getHtmlBySE($query, $se, $params = []) { if (!in_array($se, Proxy::$seAll)) { echo PHP_EOL . 'Search engine must be in ' . implode(', ', Proxy::$seAll); return false; } if (!empty(Proxy::$proxy)) { $proxy = current(ArrayHelper::toArray(Proxy::$proxy)); $params = $params + ['proxy' => $proxy]; self::$currentProxy = $proxy; } $url = isset($params['url']) ? $params['url'] : Proxy::getSEUrl($se, $query, $params); $html = Proxy::getHTML($url, $params); if (!empty(Proxy::$proxy) && !next(Proxy::$proxy)) { reset(Proxy::$proxy); } return $html; }
/** * Fill blocked proxies * @param object $proxyModel * @param string $table */ private function checkProxies($proxyModel) { foreach ($proxyModel as $proxyM) { $proxy = ['login' => $proxyM->login, 'password' => $proxyM->password, 'host' => $proxyM->host, 'port' => $proxyM->port, 'scope_id' => $proxyM->scope_id]; $res = Proxy::getHTML('http://pdffiller.com.ua', ['proxy' => $proxy, 'getInfo' => true]); if (isset($res['info'])) { if ($res['info']['http_code'] == 0) { $res = Proxy::getHTML('http://pdffiller.com', ['proxy' => $proxy, 'getInfo' => true]); if (isset($res['info'])) { if ($res['info']['http_code'] == 0) { $this->_badProxies[] = $proxy; $this->_countBadProxies++; $blockedProxy = new ProxyBlocked(); $blockedProxy->ip = $proxyM->host; // $blockedProxy->table = $table; $blockedProxy->create_date = date('Y-m-d H:i:s'); $blockedProxy->save(); } } } } } }