Страница: 1 |
Страница: 1 |
Вопрос: Web - спайдер(поиск по сети)
Добавлено: 28.05.07 16:12
Автор вопроса: Programmer
Делаю программу-спайдер. Спайдер должен:
1) Заходить на определенный сайт
2) вытаскивать все ссылки от туда
3) заходить по по каждой ссылке
4) Перейти к первому шагу
Все ссылки должны сохраняться в базу данных(текстовую).
Спайдер не должен заходить на одну и туже ссылку 2 раза.
Вопросы:
По адресу http://www.site.ru/folder1/index.htm есть ссылка
"/folder2/index.htm?param=value"
и тому подоюное... Как определять полный адрес?
При этом возможны несколько вариантов:
/file.htm
/folder
/folder/
http://www.site.ru/folder
http://www.othersite.ru/folder
http://www.othersite.ru/folder/file.htm
http://www.othersite.ru/
Как определять полные адреса ссылок?
Как сделать, чтобы ссылки не повторялись?
Ответы
Всего ответов: 8
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 28.05.07 17:14
1. Регекспами, например
2. Создаешь сортированный список ссылок и проверяешь на наличие каждого нового вытащенного урла
Номер ответа: 2
Автор ответа:
Programmer
Вопросов: 71
Ответов: 246
Профиль | | #2
Добавлено: 28.05.07 19:25
1. Пожалуйста, приведи код. Что-то я не очень-то себе это представляю.
2. В список не все URL помещается - нехватает памяти, да и перебирать все элементы списка при поиске не хотелось бы.
Номер ответа: 3
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #3
Добавлено: 28.05.07 22:26
1. Поищи по форуму темы, где рассказывается о том, как использовать VBScript Regular Expressions, почитай про синтаксис регекспов.
2. Памяти не может не хватать, если все делать правильно. Если массив сортированный, то поиск в нем имеет логарифмическую сложность, т.е. ни о каком переборе всех элементов и речи не идет.
Номер ответа: 4
Автор ответа:
VisualPaul
ICQ: 402519798
Вопросов: 12
Ответов: 111
Профиль | | #4
Добавлено: 29.05.07 10:01
Можно через DATABASE список делать
Номер ответа: 5
Автор ответа:
HACKER
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
Профиль | | #5
Добавлено: 29.05.07 12:14
Я так понимаю задача сбора с инета определённой инфы? (асей, мыл) Если это не спортивный интерес, то имхо проще купить готовую, т.к. они толкаются за несколько баксов, а писать такую целый день, если писать нормальную (несколько потоков+БД) то в день и не вберёшь.. Ты готов тратить 1-3 дня, за 2-10$ ?
Номер ответа: 6
Автор ответа:
Programmer
Вопросов: 71
Ответов: 246
Профиль | | #6
Добавлено: 29.05.07 15:31
Я уезжаю, компом будут пользоваться.
Мой прога будет незаметно искать инфу всякую по ключевым словам в ссылках и мне на диск сохранять.
Чужая не подойдет.
Номер ответа: 7
Автор ответа:
Programmer
Вопросов: 71
Ответов: 246
Профиль | | #7
Добавлено: 29.05.07 22:24
Сделал, но почему-то по-страшному его глючит.
Вот ссылка - смотрите.(http://taranovsoft.narod.ru/webspider.zip)
Номер ответа: 8
Автор ответа:
Programmer
Вопросов: 71
Ответов: 246
Профиль | | #8
Добавлено: 29.05.07 22:25
Народ, помогите. Я же исходник уже выложил.