[FreeWare] PHP скрипт определения CY, PR, DMOZ, WA, Клей CY, Клей PR сайтов

H01mes

В прошлом rkinfo
Регистрация
28 Авг 2008
Сообщения
138
Реакции
26
искал для себя простую серверную чекалку чтоб все важно в одном месте не перекидывая списки доменов с одной страницы в другую да и надоело пользоваться различными сервисами где тоже что либо не устраивает, а уж при моет GPRS соединении про программные средства вообще промолчу поэтому пользуюсь сугубо скриптами, это было то что побудило меня сделать чекер.

что из себя представляет этот чекер и умеет определять:
ТИЦ, PR, наличие в каталоге DMOZ, наличие в веб архиве (web.archive.org), производит проверку на склейку тица, проверяет на склейку ПР.

особенности:
наличие в каталоге DMOZ выводится не сухим ДА/НЕТ а с количеством результатов поиска домена в каталоге например для searchengines.ru это "Да, 5" это значит всего упоминаний домена в каталоге 5 ;)

наличие в веб архиве таже ситуация выводим не сухое да/нет а количество снимков домена к примеру searchengines.ru "Да, 973" т.е. 973 снимка

реализация склейки немного криво я сделал но тем не менее работает так что любители полазить в коде предложите свой вариант буду рад.

также про бан от служб где беру данные чтоб небыло неприятностей в файле worker.php установил паузу на выполнение скрипта в секунду, АЙПИ еще не банели, но хотелось бы иметь очередь задания при выполнения, но как это реализовать недопёр :(

Для любителей денвера и ему подобных на локале работает, да и еще если ставите на сервер на котором есть .htaccess с прописанной директивой AddDefaultCharset удалите тот что в архиве или свой который имеете на сервере в общем думайте у меня на сервере почемуто вызывает 500 ошибку если в корне сайта лежит .htaccess с директивой AddDefaultCharset и в папке скрипта.
Но если кодировка сервера отлична от кодировки utf-8 то могут быть проблемы, в остальном проблем не замечал.

Для просмотра ссылки Войди или Зарегистрируйся
 

Вложения

  • checker_1.0.zip
    39,4 KB · Просмотры: 165
  • Заблокирован
  • #2
неплохо. спасиб
еще бы чек на занятость доменов и большего от скрипта желать не надо :)
 
интересно через какое количество запросов придет бан ip? Или за такое не банят?
Было бы супер, если бы спецы допилили проверку на занятость домена в том же godaddy и вариант с использованием прокси.
 
неплохо. спасиб
еще бы чек на занятость доменов и большего от скрипта желать не надо :)
если честно просто уже поленился дописывать хотя самому не хватает...
на выходных думаю припешу но только без .рф т.к. клас имеющийся у меня на эту зону не расчитан, хотя может и его обработаю кувалдой ))

Да, проверка хотя бы рушек на занятось не повредила бы. А можете выложить класс по whois с кратеньким описанием?
конечно выложте я если кому будет интересно то свой тоже выложу, точно тот что у меня

сегодня пришлось много сайтов смотреть в веб архиве и его тормоза ужасно надоели нашел решение перекочевать на старую классическую версию она мне и по душе ближе, ссылку в чекере также поправил на классику.

Кому хочется смотреть на красоты новых тормозов архива просто переименуйте wa_old.php в wa.php

Да, проверка хотя бы рушек на занятось не повредила бы. А можете выложить класс по whois с кратеньким описанием?
хм. случайно прочел второй рас ваш пост , осмыслил вопрос теперь правильно.
вот скрипт
PHP:
<?php
 
set_time_limit(0);
 
?>
 
 
<form method=post>
<input type="hidden" value="post">
  <table>
    <tr><td align="right" colspan="2">&nbsp;</td></tr>
    <tr>
    <td align="right" valign="middle"><b>WHOIS:</b></td>
    <td valign="middle"><input size="30" type="text" name="dname" value='<?=$url ?>'>&nbsp;<input type="submit" value=найти></td>
    </tr>
   
  </table>
</form>
<?php
 
  if(!empty($_REQUEST))
  {
      $url = trim($_REQUEST['dname']);
      if((substr($url, 0, 7)) == "http://") $url = str_replace('http://','',$url);
      if((substr($url, 0, 4)) == "www.") $url = str_replace('www.','',$url);
      if(strpos($url,'/')>0) list($url) = explode('/',$url);
 
      $domain = array(
      array("ac","whois.nic.ac","No match"),
      array("ac.cn","whois.cnnic.net.cn","no matching record"),
      array("ac.jp","whois.nic.ad.jp","No match"),
      array("ac.uk","whois.ja.net","No such domain"),
      array("ad.jp","whois.nic.ad.jp","No match"),
      array("adm.br","whois.nic.br","No match"),
      array("adv.br","whois.nic.br","No match"),
      array("aero","whois.information.aero","is available"),
      array("ag","whois.nic.ag","Not found"),
      array("agr.br","whois.nic.br","No match"),
      array("ah.cn","whois.cnnic.net.cn","No entries found"),
      array("al","whois.ripe.net","No entries found"),
      array("am","whois.amnic.net","No match"),
      array("am.br","whois.nic.br","No match"),
      array("arq.br","whois.nic.br","No match"),
      array("at","whois.nic.at","nothing found"),
      array("au","whois.aunic.net","No Data Found"),
      array("art.br","whois.nic.br","No match"),
      array("as","whois.nic.as","Domain Not Found"),
      array("asn.au","whois.aunic.net","No Data Found"),
      array("ato.br","whois.nic.br","No match"),
      array("av.tr","whois.nic.tr","Not found in database"),
      array("az","whois.ripe.net","no entries found"),
      array("ba","whois.ripe.net","No match for"),
      array("be","whois.geektools.com","No such domain"),
      array("bg","whois.digsys.bg","does not exist"),
      array("bio.br","whois.nic.br","No match"),
      array("biz","whois.biz","Not found"),
      array("biz.tr","whois.nic.tr","Not found in database"),
      array("bj.cn","whois.cnnic.net.cn","No entries found"),
      array("bel.tr","whois.nic.tr","Not found in database"),
      array("bmd.br","whois.nic.br","No match"),
      array("br","whois.registro.br","No match"),
      array("by","whois.ripe.net","no entries found"),
      array("ca","whois.cira.ca","Status: AVAIL"),
      array("cc","whois.nic.cc","No match"),
      array("cd","whois.cd","No match"),
      array("ch","whois.nic.ch","We do not have an entry"),
      array("cim.br","whois.nic.br","No match"),
      array("ck","whois.ck-nic.org.ck","No entries found"),
      array("cl","whois.nic.cl","no existe"),
      array("cn","whois.cnnic.net.cn","No entries found"),
      array("cng.br","whois.nic.br","No match"),
      array("cnt.br","whois.nic.br","No match"),
      array("com","whois.crsnic.net","No match"),
      array("com.au","whois.aunic.net","No Data Found"),
      array("com.br","whois.nic.br","No match"),
      array("com.cn","whois.cnnic.net.cn","No entries found"),
      array("com.eg","whois.ripe.net","No entries found"),
      array("com.hk","whois.hknic.net.hk","No Match for"),
      array("com.mx","whois.nic.mx","Nombre del Dominio"),
      array("com.tr","whois.nic.tr","Not found in database"),
      array("com.ru","whois.ripn.ru","No entries found"),
      array("com.tw","whois.twnic.net","NO MATCH TIP"),
      array("com.ua","whois.ripe.net","No entries found"),
      array("conf.au","whois.aunic.net","No entries found"),
      array("co.at","whois.nic.at","nothing found"),
      array("co.jp","whois.nic.ad.jp","No match"),
      array("co.uk","whois.nic.uk","No match for"),
      array("cq.cn","whois.cnnic.net.cn","No entries found"),
      array("csiro.au","whois.aunic.net","No Data Found"),
      array("cx","whois.nic.cx","No match"),
      array("cy","whois.ripe.net","no entries found"),
      array("cz","whois.nic.cz","No data found"),
      array("de","whois.denic.de","not found"),
      array("dr.tr","whois.nic.tr","Not found in database"),
      array("dk","whois.dk-hostmaster.dk","No entries found"),
      array("dz","whois.ripe.net","no entries found"),
      array("ecn.br","whois.nic.br","No match"),
      array("ee","whois.eenet.ee","NOT FOUND"),
      array("edu","whois.verisign-grs.net","No match"),
      array("edu","whois.crsnic.net","No match"),
      array("edu.au","whois.aunic.net","No Data Found"),
      array("edu.br","whois.nic.br","No match"),
      array("edu.tr","whois.nic.tr","Not found in database"),
      array("eg","whois.ripe.net","No entries found"),
      array("es","whois.ripe.net","No entries found"),
      array("esp.br","whois.nic.br","No match"),
      array("etc.br","whois.nic.br","No match"),
      array("eti.br","whois.nic.br","No match"),
      array("eun.eg","whois.ripe.net","No entries found"),
      array("emu.id.au","whois.aunic.net","No Data Found"),
      array("eng.br","whois.nic.br","No match"),
      array("eu","whois.eu","Status:      FREE"),
      array("far.br","whois.nic.br","No match"),
      array("fi","whois.ripe.net","No entries found"),
      array("fj","whois.usp.ac.fj",""),
      array("fj.cn","whois.cnnic.net.cn","No entries found"),
      array("fm.br","whois.nic.br","No match"),
      array("fnd.br","whois.nic.br","No match"),
      array("fo","whois.ripe.net","no entries found"),
      array("fot.br","whois.nic.br","No match"),
      array("fst.br","whois.nic.br","No match"),
      array("fr","whois.nic.fr","No entries found"),
      array("gb","whois.ripe.net","No match for"),
      array("gb.com","whois.nomination.net","No match for"),
      array("gb.net","whois.nomination.net","No match for"),
      array("g12.br","whois.nic.br","No match"),
      array("gd.cn","whois.cnnic.net.cn","No entries found"),
      array("ge","whois.ripe.net","no entries found"),
      array("gen.tr","whois.nic.tr","Not found in database"),
      array("ggf.br","whois.nic.br","No match"),
      array("gl","whois.ripe.net","no entries found"),
      array("gr","whois.ripe.net","no entries found"),
      array("gr.jp","whois.nic.ad.jp","No match"),
      array("gs","whois.adamsnames.tc","is not registered"),
      array("gs.cn","whois.cnnic.net.cn","No entries found"),
      array("gov.au","whois.aunic.net","No Data Found"),
      array("gov.br","whois.nic.br","No match"),
      array("gov.cn","whois.cnnic.net.cn","No entries found"),
      array("gov.hk","whois.hknic.net.hk","No Match for"),
      array("gov.tr","whois.nic.tr","Not found in database"),
      array("gob.mx","whois.nic.mx","Nombre del Dominio"),
      array("gs","whois.adamsnames.tc","is not registered"),
      array("gz.cn","whois.cnnic.net.cn","No entries found"),
      array("gx.cn","whois.cnnic.net.cn","No entries found"),
      array("he.cn","whois.cnnic.net.cn","No entries found"),
      array("ha.cn","whois.cnnic.net.cn","No entries found"),
      array("hb.cn","whois.cnnic.net.cn","No entries found"),
      array("hi.cn","whois.cnnic.net.cn","No entries found"),
      array("hl.cn","whois.cnnic.net.cn","No entries found"),
      array("hn.cn","whois.cnnic.net.cn","No entries found"),
      array("hm","whois.registry.hm","(null)"),
      array("hk","whois.hknic.net.hk","No Match for"),
      array("hk.cn","whois.cnnic.net.cn","No entries found"),
      array("hu","whois.ripe.net","MAXCHARS:500"),
      array("id.au","whois.aunic.net","No Data Found"),
      array("ie","whois.domainregistry.ie","no match"),
      array("ind.br","whois.nic.br","No match"),
      array("imb.br","whois.nic.br","No match"),
      array("inf.br","whois.nic.br","No match"),
      array("info","whois.afilias.info","Not found"),
      array("info.au","whois.aunic.net","No Data Found"),
      array("info.tr","whois.nic.tr","Not found in database"),
      array("it","whois.nic.it","No entries found"),
      array("idv.tw","whois.twnic.net","NO MATCH TIP"),
      array("int","whois.iana.org","not found"),
      array("is","whois.isnic.is","No entries found"),
      array("il","whois.isoc.org.il","No data was found"),
      array("jl.cn","whois.cnnic.net.cn","No entries found"),
      array("jor.br","whois.nic.br","No match"),
      array("jp","whois.nic.ad.jp","No match"),
      array("js.cn","whois.cnnic.net.cn","No entries found"),
      array("jx.cn","whois.cnnic.net.cn","No entries found"),
      array("k12.tr","whois.nic.tr","Not found in database"),
      array("ke","whois.rg.net","No match for"),
      array("kr","whois.krnic.net","is not registered"),
      array("la","whois.nic.la","NO MATCH"),
      array("lel.br","whois.nic.br","No match"),
      array("li","whois.nic.ch","We do not have an entry"),
      array("lk","whois.nic.lk","No domain registered"),
      array("ln.cn","whois.cnnic.net.cn","No entries found"),
      array("lt","ns.litnet.lt","No matches found"),
      array("lu","whois.dns.lu","No entries found"),
      array("lv","whois.ripe.net","no entries found"),
      array("ltd.uk","whois.nic.uk","No match for"),
      array("ma","whois.ripe.net","No entries found"),
      array("mat.br","whois.nic.br","No match"),
      array("mc","whois.ripe.net","No entries found"),
      array("md","whois.ripe.net","No match for"),
      array("me.uk","whois.nic.uk","No match for"),
      array("med.br","whois.nic.br","No match"),
      array("mil","whois.nic.mil","No match"),
      array("mil.br","whois.nic.br","No match"),
      array("mil.tr","whois.nic.tr","Not found in database"),
      array("mk","whois.ripe.net","No match for"),
      array("mn","whois.nic.mn","Domain not found"),
      array("mo.cn","whois.cnnic.net.cn","No entries found"),
      array("ms","whois.adamsnames.tc","is not registered"),
      array("mt","whois.ripe.net","No Entries found"),
      array("mus.br","whois.nic.br","No match"),
      array("mx","whois.nic.mx","Nombre del Dominio"),
      array("name","whois.nic.name","No match"),
      array("name.tr","whois.nic.tr","Not found in database"),
      array("ne.jp","whois.nic.ad.jp","No match"),
      array("net","whois.crsnic.net","No match"),
      array("net.au","whois.aunic.net","No Data Found"),
      array("net.br","whois.nic.br","No match"),
      array("net.cn","whois.cnnic.net.cn","No entries found"),
      array("net.eg","whois.ripe.net","No entries found"),
      array("net.hk","whois.hknic.net.hk","No Match for"),
      array("net.lu","whois.dns.lu","No entries found"),
      array("net.mx","whois.nic.mx","Nombre del Dominio"),
      array("net.uk","whois.nic.uk","No match for "),
      array("net.ru","whois.ripn.ru","No entries found"),
      array("net.tr","whois.nic.tr","Not found in database"),
      array("net.tw","whois.twnic.net","NO MATCH TIP"),
      array("nl","whois.domain-registry.nl","is not a registered domain"),
      array("nm.cn","whois.cnnic.net.cn","No entries found"),
      array("no","whois.norid.no","no matches"),
      array("no.com","whois.nomination.net","No match for"),
      array("nom.br","whois.nic.br","No match"),
      array("not.br","whois.nic.br","No match"),
      array("ntr.br","whois.nic.br","No match"),
      array("nu","whois.nic.nu","NO MATCH for"),
      array("nx.cn","whois.cnnic.net.cn","No entries found"),
      array("nz","whois.domainz.net.nz","Not Listed"),
      array("plc.uk","whois.nic.uk","No match for"),
      array("odo.br","whois.nic.br","No match"),
      array("oop.br","whois.nic.br","No match"),
      array("or.jp","whois.nic.ad.jp","No match"),
      array("or.at","whois.nic.at","nothing found"),
      array("org","whois.pir.org","NOT FOUND"),
      array("org.au","whois.aunic.net","No Data Found"),
      array("org.br","whois.nic.br","No match"),
      array("org.cn","whois.cnnic.net.cn","No entries found"),
      array("org.hk","whois.hknic.net.hk","No Match for"),
      array("org.lu","whois.dns.lu","No entries found"),
      array("org.ru","whois.ripn.ru","No entries found"),
      array("org.tr","whois.nic.tr","Not found in database"),
      array("org.tw","whois.twnic.net","NO MATCH TIP"),
      array("org.uk","whois.nic.uk","No match for"),
      array("pk","whois.pknic.net","is not registered"),
      array("pl","whois.ripe.net","No information about"),
      array("pol.tr","whois.nic.tr","Not found in database"),
      array("pp.ru","whois.ripn.ru","No entries found"),
      array("ppg.br","whois.nic.br","No match"),
      array("pro.br","whois.nic.br","No match"),
      array("psi.br","whois.nic.br","No match"),
      array("psc.br","whois.nic.br","No match"),
      array("pt","whois.ripe.net","No match for"),
      array("qh.cn","whois.cnnic.net.cn","No entries found"),
      array("qsl.br","whois.nic.br","No match"),
      array("rec.br","whois.nic.br","No match"),
      array("ro","whois.ripe.net","No entries found"),
      array("ru","whois.ripn.ru","No entries found"),
      array("sc.cn","whois.cnnic.net.cn","No entries found"),
      array("sd.cn","whois.cnnic.net.cn","No entries found"),
      array("se","whois.nic-se.se","No data found"),
      array("se.com","whois.nomination.net","No match for"),
      array("se.net","whois.nomination.net","No match for"),
      array("sg","whois.nic.net.sg","NO entry found"),
      array("sh","whois.nic.sh","No match for"),
      array("sh.cn","whois.cnnic.net.cn","No entries found"),
      array("si","whois.arnes.si","No entries found"),
      array("sk","whois.ripe.net","no entries found"),
      array("slg.br","whois.nic.br","No match"),
      array("sm","whois.ripe.net","no entries found"),
      array("sn.cn","whois.cnnic.net.cn","No entries found"),
      array("srv.br","whois.nic.br","No match"),
      array("st","whois.nic.st","No entries found"),
      array("su","whois.ripe.net","No entries found"),
      array("sx.cn","whois.cnnic.net.cn","No entries found"),
      array("tc","whois.adamsnames.tc","is not registered"),
      array("tel.tr","whois.nic.tr","Not found in database"),
      array("th","whois.nic.uk","No entries found"),
      array("tj.cn","whois.cnnic.net.cn","No entries found"),
      array("tm","whois.nic.tm","No match for"),
      array("tn","whois.ripe.net","No entries found"),
      array("tmp.br","whois.nic.br","No match"),
      array("to","whois.tonic.to","No match"),
      array("tr","whois.ripe.net","Not found in database"),
      array("trd.br","whois.nic.br","No match"),
      array("tur.br","whois.nic.br","No match"),
      array("tv","whois.nic.tv","MAXCHARS:75"),
      array("tv.br","whois.nic.br","No match"),
      array("tw","whois.twnic.net","NO MATCH TIP"),
      array("tw.cn","whois.cnnic.net.cn","No entries found"),
      array("ua","whois.ripe.net","No entries found"),
      array("uk","whois.thnic.net","No match for"),
      array("uk.com","whois.nomination.net","No match for"),
      array("uk.net","whois.nomination.net","No match for"),
      array("us","whois.nic.us","Not found"),
      array("va","whois.ripe.net","No entries found"),
      array("vet.br","whois.nic.br","No match"),
      array("vg","whois.adamsnames.tc","is not registered"),
      array("wattle.id.au","whois.aunic.net","No Data Found"),
      array("web.tr","whois.nic.tr","Not found in database"),
      array("ws","whois.worldsite.ws","No match for"),
      array("xj.cn","whois.cnnic.net.cn","No entries found"),
      array("xz.cn","whois.cnnic.net.cn","No entries found"),
      array("yn.cn","whois.cnnic.net.cn","No entries found"),
      array("yu","whois.ripe.net","No entries found"),
      array("za","whois.frd.ac.za","No match for"),
      array("zlg.br","whois.nic.br","No match"),
      array("zj.cn","whois.cnnic.net.cn","No entries found")
      );
 
      $end = substr($url, strpos($url, ".") + 1);
 
      for($i = 0; $i < count($domain); $i++)
      {
        if($domain[$i][0] == $end)
        {
     
            $whois = $domain[$i][1];
            $no_found = $domain[$i][2];
 
            break;
        }
      }
 
      if(empty($whois)) exit("Нет данных по этому домену");
 
      @$fp = fsockopen($whois, 43) or exit ("Ошибка при обращении к серверу");
 
      fputs($fp, "$url\r\n");
 
      $answer = "";
 
      while(!feof($fp))
      {
          $answer .= "<tr><td>".fgets($fp,128)."</tr></td>";
      }
 
      fclose($fp);
 
      $answer = preg_replace("/".$no_found."/is", "Домен не найден.", $answer);
 
     
      echo "<h2>Информация о $url</h2>";
      echo "<table width=70%>";
      echo $answer;
      echo "</table>";
   
  }
 
?>

не класс конечно но решение было рабочим... яже хотел полноценный клас встроить с ответами 0, 1, 2, (ошибка, зарегистрирован и свободен)

но чет его не нашел на скорую руку если интересно поищу
 

Вложения

  • checker_1.1.zip
    39,8 KB · Просмотры: 52
Интересно :), конечно. Я под одну темку написал типа поиска доменов по нужным критериям, но увы, не нашел рабочего варианта проверки рушек на занятость, те что нашел - тормозили безбожно и без толку :). Попробую адаптировать туда этот Ваш код.
 
как и обещал, обновил скрипт добавил проверку доменов на доступность.
статусы - ошибка, свободен, зарегистрирован

whois проверка доменов по зоне .РФ отсутствует
1b9cad773304.png


если кто адаптирует под зону .РФ буду рад, мне лень так как зона не интересна
 

Вложения

  • checker_2.0.zip
    44,4 KB · Просмотры: 164
Последнее редактирование модератором:
Может повторюсь, простите, но есть ли поддержка прокси? Или такие запросы не банятся, речь о тысяче запросов например?
 
Может повторюсь, простите, но есть ли поддержка прокси? Или такие запросы не банятся, речь о тысяче запросов например?
нет, нету. но установлена пауза между запросами в 1 секунду, думаю если даже будет 10к запросов всё обработает. теоретически ;-)
 
Поставил на денвере checker 2.0, при проверке в графе "DMOZ" выдает ошибку:
Fatal error: Maximum execution time of 60 seconds exceeded in Z:\home\checker.ru\www\download.php on line 35
35 строка:
Код:
$ret .= fgets($fp,1024);
Это возможно из за того, что местный провайдер закрыл доступ к dmoz.org? Если да, то:
1. как можно обойти
или
2. как можно отключить проверку наличия в каталоге?

Плюс пожелание - сделать проверку кол-ва страниц в псЯ - это возможно?
 
Поставил на денвере checker 2.0, при проверке в графе "DMOZ" выдает ошибку:
Fatal error: Maximum execution time of 60 seconds exceeded in Z:\home\checker.ru\www\download.php on line 35
1. как можно обойти

Если воспользоваться переводчиком, то словосочитание "Maximum execution time of 60 seconds exceeded" говорит о том, что php скрипту хостингом выделено время 60 секунд и это время прошло.

a) Один из вариантов в начале php скрипта прописать
PHP:
set_time_limit(0);
Дальше зависит от настроек хостера разрешит или нет установить свое время.

б) Второй вариант подправить соответствующий параметр в php.ini .
 
Назад
Сверху