где можно взять (даже купить готов!) такие скрипты

123 4
MVH
На сайте с 03.05.2005
Offline
64
MVH
#11

Нашёл глюк. Надо исправить адрес whois сервиса whois.ripe.net на whois.ripn.net. Не знаю с чем это связано, т.к. раньше работало именно через whois.ripe.net. Ну да ладно.

Вот новая версия скрипта.


$WHOIS_SERVERS = array(
'ua' => array('addr' => 'whois.com.ua', 'text' => 'No entries found for domain'),
'ru' => array('addr' => 'whois.ripn.net', 'text' => 'No entries found for the selected source'),
'' => array('addr' => 'whois.internic.net', 'text' => 'No match for')
);
//
function check_domain($domain_name, &$whois_servers)
{

$zone = explode('.', $domain_name);
$zone = $zone[count($zone) - 1];


if (!array_key_exists($zone, $whois_servers) && !array_key_exists('', $whois_servers))
return 'No whois server';
else if (array_key_exists($zone, $whois_servers))
$whois = $whois_servers[$zone];
else
$whois = $whois_servers[''];

$sock = fsockopen ($whois['addr'], 43, $errno, $errstr);
if (!$sock)
{
return false;
}
else
{
fputs ($sock, $domain_name."\n");
while (!feof($sock))
{
if (strstr(fgets($sock, 128), $whois['text']))
{
fclose($sock);
return 'free';
}
}
}
fclose($sock);
return 'occupy';
}

В переменной $WHOIS_SERVERS содержится массив с адресами whois серверов (для разных зон они часто бывают разными). Формат такой:

'zone' => array('addr' => 'whois.ripn.net', 'text' => 'No entries found for domain'),

Вместо zone здесь указывается зона (например, "ru"). Вместо whois.ripn.net (ключ массива 'addr') - адрес, соответствующий данной зоне, а в ключе 'text' указывается фраза, которая выдаётся whois сервером, если домен свободен (помимо подобной фразы whois сервер выдаёт ещё и много другой информации и эта фраза ищется среди выданной инфы).

Элемент массива с пустым ключом ('') используется по умолчанию, если для какой-то зоны не указан whois сервер.

Вызывать ф-ю надо так:


check_domain('yandex.ru', $WHOIS_SERVERS);

Если домен свободен, то ф-я вернёт 'free', если занят - 'occupy', если для зоны указанного домена не указан whois сервер и whois сервер по умолчанию (пустой ключ массива) не задан - то 'No whois server', в случае ошибка ф-я вернёт false.

Andreyka
На сайте с 19.02.2005
Offline
822
#12

С таким скриптом whois забанит в момент

Не стоит плодить сущности без необходимости
MVH
На сайте с 03.05.2005
Offline
64
MVH
#13
Andreyka:
С таким скриптом whois забанит в момент

Предложите другой.

Можно к этому прокси прикрутить. Другого способа, думаю, нет.

MVH
На сайте с 03.05.2005
Offline
64
MVH
#14

Немного подправил whois скрипт. Предыдущий выдавал, что домен занят, если whois сервер отвечал, что превышен лимит запросов.

Вот:


$WHOIS_SERVERS = array(
'ua' => array('addr' => 'whois.com.ua', 'free_response' => 'No entries found for domain', 'occupy_response' => 'domain:'),
'ru' => array('addr' => 'whois.ripn.net', 'free_response' => 'No entries found for the selected source', 'occupy_response' => 'Last updated on'),
'com' => array('addr' => 'whois.internic.net', 'free_response' => 'No match for', 'occupy_response' => 'Last update of whois database'),
'net' => array('addr' => 'whois.internic.net', 'free_response' => 'No match for', 'occupy_response' => 'Last update of whois database'),
'org' => array('addr' => 'whois.publicinterestregistry.net', 'free_response' => 'NOT FOUND', 'occupy_response' => 'Last Updated On'),
'info' => array('addr' => 'info.whois-servers.net', 'free_response' => 'NOT FOUND', 'occupy_response' => 'Domain Name:'),
'biz' => array('addr' => 'biz.whois-servers.net', 'free_response' => 'Not found', 'occupy_response' => 'Whois database was last updated on'),
'' => array('addr' => 'whois.internic.net', 'free_response' => 'No match for', 'occupy_response' => 'Last update of whois database')
);

function check_domain($domain_name, &$whois_servers)
{

$zone = explode('.', $domain_name);
$zone = $zone[count($zone) - 1];


if (!array_key_exists($zone, $whois_servers) && !array_key_exists('', $whois_servers))
return 'No whois server';
else if (array_key_exists($zone, $whois_servers))
$whois = $whois_servers[$zone];
else
$whois = $whois_servers[''];

$sock = fsockopen ($whois['addr'], 43, $errno, $errstr);
if (!$sock)
{
return false;
}
else
{
fputs ($sock, $domain_name."\n");
while (!feof($sock))
{
$response = fgets($sock, 128);
if (strstr($response, $whois['free_response']))
{
fclose($sock);
return 'free';
}
else if (strstr($response, $whois['occupy_response']))
{

fclose($sock);
return 'occupy';
}
}
}

fclose($sock);
return 'no_response';
}
P
На сайте с 25.02.2006
Offline
30
#15

может у кого есть скрипт дял определения ПР и ТИЦ чтобы не нужно было вводить адрес сайта нажимать на "ок" и чтобы выводил результат...

а чтобы на кнопке или текстово уже сразу при указании в строчке кода сайта показывал эти параметры...

по типу как многи есайты выдают свои кнопки ТИЦ и ПР

SR
На сайте с 15.06.2006
Offline
61
SqR
#16

забыли к определению PR добавить строку вверху:

define('GOOGLE_MAGIC', 0xE6359A60);

Увести чужую жену просто, трудно вернуть ее обратно.
[Удален]
#17

Да, у меня есть такой скрипт, если хотите я вам его продам за 5$. Контакты снизу.

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

kpuk
На сайте с 22.04.2006
Offline
89
#18

нужен скрипт для определения тиц пр як дмоз и проверки по войс сразу нескольких доменов ( от 50 ), есть что нибудь?

Megavolt
На сайте с 23.12.2005
Offline
179
#19

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

Иногда лучше жевать.... (С)
L
На сайте с 24.02.2005
Offline
181
#20

По Я все легче. Есть такая штука http://bar-navig.yandex.ru/u?show=31&ver=2&url=http://www.site.ru/. Возвращает и тИЦ и Я.Каталог. По идее можно картинкой просто вывести, тогда просто параметр ver поставить на ver=1. Дальше парсером полученный XMl парсишь и все. Проблем гораздо меньше. А вот по Гуглу - предлдоженный вариант очень медленный, но я к сожалению другого не нашел :(

123 4

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий