Ошибка [1.1.944] SE::Google::SafeBrowsing - не работает

  • Автор темы Автор темы Support
  • Дата начала Дата начала

Support

Administrator
Команда форума
A-Parser Enterprise
ehdEa.png
 
Планы исправлять на ближайшее время есть?
 
Планы исправлять на ближайшее время есть?
держи, мож пригодится. на вход подаёшь массив доменов вида domain.com:
PHP:
foreach($domains as $domain){
    $useragent = 'тут какой-нибудь юзерагент подставишь';
    reparse:
    //линк страницы проверки на safebrowsing https://transparencyreport.google.com/safe-browsing/search?url=
    $url = 'https://www.google.com/transparencyreport/api/v3/safebrowsing/status?site='.$domain;
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_TIMEOUT, 7);
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
    $check = curl_exec($ch);
    curl_close($ch);
    if(!strstr($check,'sb.ssr')){
        goto reparse;
    }
    /* возможные варианты того, что может быть в файле ответа(я так думаю, что это не все, но это всё, что мне удалось насобирать с 3к доменов), на них и строится дальнейшая логика, что делать с доменом, добавить в блеклист или нет
    ,6,0,0,0,0,0,0, - No available data
    ,1,0,0,0,0,0, - No unsafe content found
    ,2,1,0,0,0,0, - Send visitors to harmful websites
    ,3,0,0,1,0,0, - Some pages on this site are unsafe. Try to trick visitors into sharing personal info or downloading software
    ,3,0,1,0,0,0, - Some pages on this site are unsafe. Install unwanted or malicious software on visitors’ computers
    ,3,1,0,1,0,0, - Some pages on this site are unsafe. Send visitors to harmful websites/Try to trick visitors into sharing personal info or downloading software
    */
    if(strstr($check,'[["sb.ssr",6,') OR strstr($check,'[["sb.ssr",1,')){//проверка данных по домену, полученных в файле ответа, если код ответа 6 или 1, значит всё ок
        //исключаем дор из блеклиста или просто пропускаем, вобщем выполняем нужное действие, если с доменом всё ок
    }else{
        $counter++;
        file_put_contents('blacklist.txt',"$counter. $domain: bad ".time().PHP_EOL,FILE_APPEND);
    }
}
 
Исправлено, добавлена опция Check, которая позволяет указать делать ли проверку по всему урлу или только по домену.
 
Назад
Верх