вторник, 23 октября 2007 г.

Парсинг ссылок из Яндекс.Каталога

Вообщем по просьбам отдельных личностей нарисовал скриптик для парсинга ссылок из яндекс.каталога. Нужно для сапы дабы на автомате покупать ссылки с сайтов из того же раздела что и сайт в я.к, попользовать (пока совершенно нахаляву) можно по адресу http://yaca.bzhost.net/yaca.php

Как использовать?
В поле ввода копируете адрес из Я.К и клацаете кнопку "Отпарсить".
Если это главная страница раздела, отпарсит весь раздел, если страница, то только страницу.

Работает достаточно долго, на 100 страниц каталога где-то чуть больше 250 секунд, так что наберитесь терпения.

Что дальше делать со списком?
Добавляете в избранное для кампании в sape, настраиваете фильтр под нужные параметры (не забывая поставить галку напротив "Отображать только избранные сайты") и всключаем полуавтоматический режим (ну или автомат)

Вроде все, если че пинать в комменты! :)

З.Ы. Китайцы форева. При написании скрипта вылезла проблема, fastcgi апачевский говорил ошибку по тайм-ауту:

mod_fcgid: read data timeout in 40 seconds

Решение нашел только у китайцев, надо в раздел:

<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
</IfModule>

Добавить строчку IPCCommTimeout 300, т.е. вот так:

<IfModule mod_fcgid.c>
AddHandler fcgid-script .fcgi
IPCCommTimeout 200
</IfModule>

где "300" - это то самое время тайм-аута :)

2 комментария:

DMakeev комментирует...

Нюанс!
В mod_fcgid 2.2 параметр IPCConnectTimeout задать через httpd.conf не получается - просто игнорирует и отваливается на 40 секунде.

Я решал в лоб - в соответствующем порте make config, потом в mod_fcgid.2.2/fcgid_conf.c правлю
#define DEFAULT_IPC_COMM_TIMEOUT 40 на нужное число и пересобираю порт. Так работает.

Анонимный комментирует...

http://jay.vox.com/library/post/mod_fcgid-ignoring-fastcgi-config-settings.html

В VirtualHost надо вроде указывать чтобы работало