diff options
Diffstat (limited to 'scraper')
-rw-r--r-- | scraper/google.php | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/scraper/google.php b/scraper/google.php index 3cff687..0aba310 100644 --- a/scraper/google.php +++ b/scraper/google.php @@ -559,6 +559,7 @@ class google{ } curl_close($curlproc); + echo $data; return $data; } @@ -977,6 +978,11 @@ class google{ "related" => [] ]; + if($this->detect_sorry($html)){ + + throw new Exception("Google blocked this 4get instance. Please set up a proxy!"); + } + $this->parsejavascript($html); // @@ -2795,7 +2801,10 @@ class google{ throw new Exception("Failed to get search page"); } - $this->fuckhtml->load($html); + if($this->detect_sorry($html)){ + + throw new Exception("Google blocked this 4get instance. Please set up a proxy!"); + } $out = [ "status" => "ok", @@ -3609,4 +3618,22 @@ class google{ return rtrim($title, ". \t\n\r\0\x0B"); } + + private function detect_sorry($html){ + + $this->fuckhtml->load($html); + $detect_sorry = + $this->fuckhtml + ->getElementsByTagName("title"); + + if( + isset($detect_sorry[0]) && + $detect_sorry[0]["innerHTML"] == "302 Moved" + ){ + + return true; + } + + return false; + } } |