wget в качестве паука

N
На сайте с 15.12.2002
Offline
12
1728

Хотелось бы услышать мнение специалистов.

Можно ли использовать wget в качестве паука (ну или основы для него) для поисковика? Вроде бы он умеет делать все что нужно, в смысле закачивать сайты целиком проходя по всем ссылкам. Не будет ли проблем с большими сайтами (не переклинит ли wget от большого количества страниц)?

I
На сайте с 28.10.2002
Offline
108
#1
Вроде бы он умеет делать все что нужно, в смысле закачивать сайты целиком проходя по всем ссылкам.

Вообще-то главная задача паука не качать сайты, а индексировать на них информацию, заносить в свою базу.

N
На сайте с 14.11.2001
Offline
53
nis
#2

все зависит от масштабов работы

wget довольно аккуратно качает и этот код конечно можно переиспользовать, но доводить конечно придется.

Например, он не умеет хранить очереди на диске =>

неустойчив к перезапуску и не готов выполнять длинные

задачи (список найденных и еще непосещенных ссылокрастет намного быстрее списка посещенных)

Далее - многопоточное скачивание, асинхронный DNS,

балансировщик нагрузки, реализация стратегии обхода ...

Вообщем, wget - это 10%.

N
На сайте с 15.12.2002
Offline
12
#3
Как писал nis
Далее - многопоточное скачивание, асинхронный DNS,
балансировщик нагрузки, реализация стратегии обхода ...

Ну, для многопоточного скачивания можно запустить несколько wget'ов одновременно и напустить их на разные сайты, чтобы не пересекались. Нагрузку тоже делить по количеству сайтов для скачивания. Обходить в конечном итоге нужно весь сайт целиком, поэтому не все ли равно в каком порядке?

AiK
На сайте с 27.10.2000
Offline
257
AiK
#4

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

И потом, вроде бы он JS не парсит, т. что сайты с динамическим меню отпадают тоже.

N
На сайте с 15.12.2002
Offline
12
#5
Как писал AiK
Nobbin, предупреждаю, что сайт с сессиями в URL ты целиком никогда не выкачаешь...

Да. Тут не поспоришь :(

Как писал AiK
И потом, вроде бы он JS не парсит, т. что сайты с динамическим меню отпадают тоже.

А мне казалось, что JS вообще мало кто парсит. Ну уж по крайней мере, чтобы парсить динамическое меню, нужно иметь на борту не менее чем полноценный интерпретатор JavaScript.

AiK
На сайте с 27.10.2000
Offline
257
AiK
#6
Ну уж по крайней мере, чтобы парсить динамическое меню, нужно иметь на борту не менее чем полноценный интерпретатор JavaScript.

Ты так сказал, как-будто речь идёт о тактическом ядерном оружии.

Интерпретатор, в отличие от ракеты и в open source проектах позаимствовать можно. И потом, я писал "парсить" а не "выполнять". Как говорится почувствуйте разницу.

N
На сайте с 15.12.2002
Offline
12
#7
Как писал AiK

Ты так сказал, как-будто речь идёт о тактическом ядерном оружии.
Интерпретатор, в отличие от ракеты и в open source проектах позаимствовать можно. И потом, я писал "парсить" а не "выполнять". Как говорится почувствуйте разницу.

На мой взгляд, парсить как раз не достаточно. Надо уметь выявлять ссылки. Теоретически, на JS можно написать такой изврат, что очень сложно будет понять, что это за ссылка.

Нпаример, можно часть ссылки вычислять в какой-нибудь функции.

Но я это все к тому говорю, что все равно этого почти никто не делает и для обычного паука разбирать JavaScript совсем необязательно.

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