Яндекс и Мастерхост

123
MM
На сайте с 02.12.2003
Offline
49
m&m
#11

А xml.yandex.ru не пробовали? :)

И универсальнее, и удобнее (ну по мне), да и не забанят при Ваших задачах и объемах.

Deni
На сайте с 15.04.2006
Offline
355
#12
m&m:
А xml.yandex.ru не пробовали? :)

И универсальнее, и удобнее (ну по мне), да и не забанят при Ваших задачах и объемах.

Если не ошибаюсь лимит 2000 обращений в месяц

Sir[MAI]
На сайте с 22.10.2002
Offline
147
#13
Deni:
Если не ошибаюсь лимит 2000 обращений в месяц

http://help.yandex.ru/xml/price.xml?id=930363

Яндекс позволяет бесплатно делать до 1000 XML-запросов в сутки для личного некоммерческого использования.
С уважением, Сергей
EH
На сайте с 01.10.2004
Offline
116
#14

Сайт на мастерхосте, на нем есть скрипт отслеживания выдачи: позиции по запросам, бэклинки и т.д. В день бывает до 1000 запросов, уже несколько месяцев полет нормальный. Скрипт написан на php, информацию с Яндекса берет через сокеты.

Пример кода:


$fp = fsockopen("www.yandex.ru", 80, $errno, $errstr, 30);

if (!$fp) {
echo "$errstr ($errno)<br />\n";
}
else {
$out = "GET http://www.yandex.ru/yandsearch?rpt=rad&text=".urlencode($keyword)."&numdoc=50 HTTP/1.0\r\n";
$out .= "Host: www.yandex.ru\r\n";
$out .= "Referer: http://www.yandex.ru/\r\n";
$out .= "Cookie: income=1\r\n\r\n";

fwrite($fp, $out);
while (!feof($fp)) {
$string .= fgets($fp, 128);
}
fclose($fp);
}
K
На сайте с 23.10.2004
Offline
159
#15

СПАСИБО!

А он показывает только первые 50 позиций?

PS:

осталось только написать обработку переменной $string: на каком месте по какому-то слову какой-то сайт...

EH
На сайте с 01.10.2004
Offline
116
#16
kravru:
СПАСИБО!
А он показывает только первые 50 позиций?
PS:
осталось только написать обработку переменной $string: на каком месте по какому-то слову какой-то сайт...

Да, только первые 50. В принципе можно идти и дальше, нужно лишь найти в документе строку перехода на другие страницы, распарсить ее и последовательно переходить по адресам в ней. Мне это не нужно было, я и не делал :-)

Позиции определяются с помощью простого регулярного выражения:

preg_match_all ("/<li value=\"(.*?)\".>(.*?)<\\/div>/sm", $string, $matches);

После обработки их как раз можно вытащить из массива $matches.

Если интересует, могу весь скрипт сбросить в личку, тут не самое подходящее место для его обсуждения :-)

cims
На сайте с 15.11.2005
Offline
60
#17

Можно проверить если IP вашего ресурса(ну хостера) зарегин в Яндекс.XML , то можно пользоваться простыми XML запросами, если нет или он в "бане", то возможно через библиотеку CURL в PHP

http://ru.php.net/manual/ru/ref.curl.php

она попроще сокетов, но сокеты тоже должны работать великолепно

PM
На сайте с 15.07.2005
Offline
272
PPM
#18

Продолжаем разговор.

Сокеты не помогли, что и ожидалось. Увидел замечательную картинку:

Доступ к нашему сервису запрещен!
Вы обратились к Яндексу с IP-адреса 217.16.16.228.
Возможно, этот сервер является открытым и анонимным прокси-сервером. Это означает, что любой пользователь интернета может им воспользоваться совершенно безответственно. Мы вынуждены запретить доступ через такие прокси-сервера, потому что они широко используются для атак на нас или на почтовые ящики наших пользователей.

Ваш компьютер может сам стать открытым прокси-сервером, если он заражен вирусом (обычно эти вирусы используются для рассылки почтового спама).

Администраторы таких прокси-серверов нарушают пункт 5 "Норм пользования сетью" и п. 4 "Основных принципов взаимодействия сети Яндекса с другими сетями". Обратите также внимание, что доступ может быть запрещен в случае нарушения Лицензии на использование поисковой системы Яндекса.

Что делать?
Вы можете попробовать самостоятельно отключить прокси-сервер. Для этого:

В Internet Explorer 4.* надо зайти в View (Вид) -> Internet Options (Свойства обозревателя) -> Connection (Подключение) и убрать флажок "Access Internet using a proxy server" ("Использовать прокси-сервер").
В Internet Explorer 5.* надо зайти в Tools (Сервис) -> Internet Options (Свойства обозревателя) -> Connections (Подключение) -> LAN Settings (Настройка локальной сети) и убрать флажок "Use a proxy server" ("Использовать прокси-сервер") .
В Netscape Navigator надо зайти в Edit (Правка) -> Preferences (Настройки) -> Advanced (Дополнительные) -> Proxy (Прокси-сервер) и выбрать там "Direct connection to the Internet" ("Прямое подключение к Интернет").
Если это не помогает, возможно, прокси-сервер установлен принудительно у Вашего провайдера или системным администратором Вашей компании. Попробуйте воспользоваться этой ссылкой. Если и это не помогает, обратитесь, пожалуйста, к ним.
Если Вы уверены, что не используете прокси-сервер, проверьте свой компьютер антивирусом или обратитесь к специалисту.

И, наконец, если Вы полагаете, что все проблемы устранены, а вас все еще не пускают, пожалуйста, сообщите об этом нам по адресу unblock@yandex-team.ru, обязательно указав в письме IP-адрес.

Пока проблема не устранена, вы можете работать с Яндекс.Почтой, зайдя на сайт mail.yandex.ru

Но решение было найдено, тем не менее.

У меня площадок.... куча. Делаем вместо

$row=file("http://www.yandex.ru/yandsearch?ras=1&Link=".$x."&site=".$y);

Делаем

$row=file("http://www.site.ru/yandex.php?Link=".$x."&site=".$y);
Где site.ru лежит на незабанной площадке.

А yandex.php уже будет содержать

$row=file("http://www.yandex.ru/yandsearch?ras=1&Link=".$Link."&site=".$site);
Sergey Petrenko
На сайте с 23.10.2000
Offline
482
#19

PPM, а может не стоило бы наглеть и работать цивилизованно? Ну, побанят постепенно все ваши IP, делов-то...

SE
На сайте с 26.02.2006
Offline
71
#20
PPM:
Продолжаем разговор.
Сокеты не помогли, что и ожидалось. Увидел замечательную картинку:



Но решение было найдено, тем не менее.
У меня площадок.... куча. Делаем вместо
ДелаемГде site.ru лежит на незабанной площадке.

А yandex.php уже будет содержать

Это не на долго, уверяю.

Я вот захотел воспользоваться xml.yandex, всё аккуратно, зарегился.

И нифига, не хочет обрабатывать запросы. Я им пишу, что за дела, как же так. Они в ответ присылают кусочек лога, где идут запросы с этого айпишника (у меня виртуальный хостинг) на яндексовские скрипты. И говорят, что нельзя так. Мне возиться с ними не хотелось, и я прикрутил api.google (нужен был поиск по сайту), но факт в том, что банят айпишник, а не сайт, причём надолго (тот лог был полугодовой давности, я тогда ещё даже у другого хостера был).

123

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