LINUX.ORG.RU

Парсим Google на Perl (или Google Hack HowTo)

 , , , , ,


0

2

В статье вы найдете описание метода, позволяющего эффективно посылать запросы серверам Google и обрабатывать ответы. Прилагаются скрипты на Perl в количестве 3 штук, а также список из 106 рабочих анонимайзеров. Ключевые моменты:

  • Как обойти капчу и ограничение на частоту запросов
  • Как собрать прокси и проверить их валидность
  • Как распараллелить посылку запросов
  • Как реализовать возможность приостанавливать скрипт
  • Пишем универсальный парсер

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

>>> Подробности



Проверено: Shaman007 ()
Ответ на: комментарий от robert_foster

> какие-такие задачи автоматизации может выполнить Perl и не может, скажем, Python.

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

Python не столько удобен многими местами: нет альтернативы CPAN, нет удобных regexp'ов, нет POD, нет форматов, имеет место насильственный ООП и т.д. и т.п. К тому же Python излишне многословен. Одно лишь приемущество - у Python'а в сравнении с Perl чрезвычыйно низкий порог вхождения, но, по понятным причинам, это далеко не всегда хорошо.

> Сударь, а не свалить ли Вам на Двачик уже?

Хм... с каких это пор педонисты стали указывать мне когда и куда пойти. Не порядок. Трепещи, постылый!

deadlock
()
Ответ на: комментарий от robert_foster

> «Школота», «кирпичи», «быдло» и откровенно хамский общий тон высказывания как отягощающее обстоятельство.

Дык а кто же, как не школота и быдло будет вещать столько фееричную чушь.

Так что засунь себе в задницу свои отягощающие обстоятельства.

deadlock
()

Извините,но шаман охренел. Очередной придурок решил попиарить свой дневничок(аж двести баксов теперь в месяц будет на рекламе поднимать, годик покопит и сможет наконец в институт поступить!), описав, как через жопу решить задачу, которую уже сто лет как решили по уму. А шаман подтверждает. И находятся ещё люди, которые кричат «браво! я столько нового узнал! отличная статья!». Вам самим не стыдно? Где все эти опытные фрики-линуксоиды что обитали тут пять лет назад? Почему эти нубы тут, а не в группах вконтакте, где им и место?

Лор превратился в форум неудачников и посредственностей со всего рунета. Скоро будут подтверждённые новости с заголовками в стиле «На моём блоге на народ.ру вышла статья 'установи линукс - будь не как все в твоём классе','как убедить маму разрешить тебе ставить линукс' и серия из 10-ти статей 'как поставить убунту'». А лор пора переименовывать в linux.school.ru

Нахер нужен такой лор, буду теперь опеннет читать.

P.S: шаман, можешь удалять коммент. И ты, и лор превратились в полное гавно. Желаю вам и дальше плескаться в своих фекалиях. А я ухожу.

anonymous
()
Ответ на: комментарий от deadlock

>нет удобных regexp'ов
Да брось.

нет форматов

Каких еще форматов?

насильственный ООП

Тут можно было сострить про вероятные душевные и телесные травмы, но не будем.

излишне многословен

Нельзя писать столь нежно любимые перлистами однострочники? Вот и славно, вот и хорошо.

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

«Спасите-помогите, я теряю свою _элитность_ !!!11», да?

Хм... с каких это пор педонисты стали указывать мне когда и куда пойти.

Сам понимаешь, послать могут где/кто/кого/куда угодно ^_^

robert_foster ★★
()

Ах, по сабжу так и не отписался.
Уверен, что Гугля тебе скажет большое «спасибо» за такое использование их серверов. Уж наверно ограничения не зря поставили, а?

robert_foster ★★
()
Ответ на: комментарий от robert_foster

>Да брось. Юзаешь перловые или ебешся с POSIX?

Каких еще форматов?

У-ха-ха ... В общем школота, такая школота.

rshadow
()
Ответ на: комментарий от robert_foster

Писон головного мозга. Вы бы хотя бы в перле хоть немного бы разбирались, прежде чем такие вбросы делать.

amonymous
()

На хабр.

anonymous
()
Ответ на: комментарий от deadlock

> Меня всегда удивляет беспомощное быдло, которое просто не в стостоянии осилить Perl. Когда подобные тебе уже сдохнут-то?

Перло-фаны в своём репертуаре. Зашкаливающее ЧСВ и лютая ненависть ко всем, кто не молится на их убогий скриптовый язычок.

Адекватная молодёжь работающая в сфере автоматизации не видит никаких альтернатив для ряда задач, для которых предназначен Perl

Трудно назвать адекватными людей, которые не видят альтернативы перлу. Тут два варианта - либо это тупари, со скрипом выучившие ограниченное подмножество одного скриптового язычка, и на большее просто не способные, либо больные фанбои, увлеченные перл-поэзией, перл-гольфом и прочей хренью. Понятно, что ни тех, ни других дальше «автоматизации» (читай эникейщества) не пускают. Зато ЧСВ у болезных выше крыши. Как же, они умеют парсить текст регекспами с помошью уродских sed-конструкций. Боги, ёпт.

anonymous
()
Ответ на: комментарий от anonymous

> Перло-фаны в своём репертуаре. Зашкаливающее ЧСВ и лютая ненависть ко всем, кто не молится на их убогий скриптовый язычок.

Хм... Хм... В подавляющем большинстве своём любители Perl, как раз таки не присуще «зашкаливающее ЧСВ и лютая ненависть ко всем, кто не молится на их убогий скриптовый язычок.». Определённо, это кредо школьников-питоноёбов :-)

> Трудно назвать адекватными людей, которые не видят альтернативы перлу. Тут два варианта - либо это тупари, со скрипом выучившие ограниченное подмножество одного скриптового язычка, и на большее просто не способные[...]

Нет, глупыш. Это видят люди, у которых Perl далеко не единственное средство решения проблем. Эти люди хладнокровно выбирают Perl как glue-language руководствуясь фактами о технологии и логическими выводами на этих фактах. Также, что ты понимаешь под автоматизацией, ничего общего не имеет с настоящей автоматизацией. Эти господа, в отличие от тебя (срущего кирпичами ничтожного педониста) имеют большее представление о скриптовых динамических языках, а также о языках и технологиях в целом. Скажем, мне приходится решать давольно комплексные задачи, и технологий которые я использую, помимо Perl, просто масса - Ada, Erlang, CLIPS, Prolog, Tcl/Tk (как пример).

В автоматизации, как glue-language - Perl стандарт de-facto.

deadlock
()
Ответ на: комментарий от deadlock

> Одно лишь приемущество - у Python'а в сравнении с Perl чрезвычыйно низкий порог вхождения

Не тешь своё самолюбие, Perl5 - очень примитивный язык со скудным набором абстракций. Вся его сложность в раздутом синтаксисе и неоднозначной семантике вычислений (контексты, ссылки vs значения, lexical scoping vs dynamic scoping). Этой внешней избыточной сложностью и гордятся гуру «автоматизации». Причём эта сложность была в значительной мере порождена как побочный эффект от сохранения обратной совместимости.

Что касается порога вхождения, то он для Перла не выше питоньего. А может и пониже, ибо в Питоне придётся сходу вникать в ООП, что как выясняется далеко не всем «автоматизаторам» под силу. Правда потом, с ростом сложности задач, вгрызаться в синтаксическую перловку и тонкости миллиона специальных случаев действительно труднее. При этом уровень абстракции кода у большинства перло-писателей оставляет желать лучшего (все силы уходят на борьбу с синтаксисом). Я знавал многих поциентов, всю жизнь писавших на перле и не знавших ничего об ООП, замыканиях, функциональной декомпозиции и event-driven техниках. «Парсинг» текста регекспами - вот их потолок.

anonymous
()

Бан

А можно я тоже попиарю тут пару десятков говноблогов/говносайтов? Скока стоит ссылка с главной? )))

FollowTheRabbit
()

Shaman007 такой шаман

anonymous
()
Ответ на: комментарий от anonymous

> Perl5 - очень примитивный язык со скудным набором абстракций.

Со скудным набором абстракций относительно каких языков? Педон? Аргуметируй. Какие такие абстракции есть в педоне коих нет в Perl?

> [...] контексты, ссылки vs значения, lexical scoping vs dynamic scoping [...] Причём эта сложность была в значительной мере порождена как побочный эффект от сохранения обратной совместимости.

Хм... ну скажем, лексические и динамические области видимости - весьма практические и полезные концепции. В каком это месте какая либо из этих концепций была «порождена как побочный эффект от сохранения обратной совместимости»? Врешь ведь всё. Аргументируй пруфами и логическими суждениями. Пока бздёшь в воздух и наглая ложь.

> А может и пониже, ибо в Питоне придётся сходу вникать в ООП, что как выясняется далеко не всем «автоматизаторам» под силу [...]

Да ну? Врёшь ведь снова. ООП прост, как кочерга. Также ООП в большенстве задач и не нужен вовсе. Так зачем же эта насильственность и анальные муки?

> Правда потом, с ростом сложности задач, вгрызаться в синтаксическую перловку и тонкости миллиона специальных случаев действительно труднее.

Да, верно, Perl насыщен частными решениями задач. Так ведь так и должен выглядеть glue-language. Гораздо проще прочесть и запонить частные случаи, которые прекрасно синтаксически описываются на Perl, чем писать велосипеды для часто решаемых задач. Потратив всего немного времени, можно с удовольсвием и очень легко читать эти частности.

> (все силы уходят на борьбу с синтаксисом)

Ерунда. Никто не борится с синтаксисом Perl, кроме тех, кто не знаком с темой. А с темой ознакомиться проще простого. И, как не странно, в Perl (не смотря на приличный синтаксический сахар) засад гораздо меньше, чем скажем в мерзком C++.

>Я знавал многих поциентов, всю жизнь писавших на перле и не знавших ничего об ООП, замыканиях, функциональной декомпозиции и event-driven техниках. «Парсинг» текста регекспами - вот их потолок.

Дык а ты по помойкам-то не шляйся. С таким же успехом можно вспомнить и педонскую школоту пидарасящую тонны быдлокода.

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

deadlock
()

Исходники не смотрел, но осуждаю.

anonymous
()

Блин, как убрать панель слева со словами «189 Readers, 317 Followers» ? Читать же невозможно!

xintrea
()
Ответ на: комментарий от deadlock

> Со скудным набором абстракций относительно каких языков? Педон?

Тебе, как и обдолбанным рубистам, везде Питон мерещится. Я понимаю конечно ваш баттхёрт, питонисты делают те же вещи ценой гораздо меньших усилий. Если уж ты хочешь сравнения именно с Питоном, то да, Питон при своём минимализме всё же более высокоуровневый. Как минимум там функции, модули и классы - first class citizens (и не надо мне втирать про ссылки, с этим ублюдством иди на С программируй). Ещё можно вспомнить встроенные исключения, генераторы, декораторы. Мелочь, но приятно. Впрочем, выразительные средства Питона достаточно скудны, не поспоришь.

В каком это месте какая либо из этих концепций была «порождена как побочный эффект от сохранения обратной совместимости»? ...

Учи историю. В оригинальном Перл не было ссылок и lexical scoping. Это всё прикрутили только в 5-й версии, но ломать старый код Ларри не хотел, поэтому и вышел такой уродец (синтаксис для ссылок аля указатели чего только стоит) с неоднозначной семантикой (use strict и my зачем нужны и почему появились хоть догадываешься?).

ООП прост, как кочерга. Также ООП в большенстве задач и не нужен вовсе.

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

Так зачем же эта насильственность и анальные муки?

Анальные муки - это ты про перловый ООП? Ну да, так оно и есть. Кстати, меня всегда забавляло, что несколько поколений перло-кодеров не удосужились даже конструктор параметризовать. Это к разговору об абстракциях. Сейчас хоть Moose есть, но ты и его не осилишь, боюсь.

Да, верно, Perl насыщен частными решениями задач. Так ведь так и должен выглядеть glue-language. Гораздо проще прочесть и запонить частные случаи.

Замечательная логика зубрилки. Ты настолько хорошо укладываешься в стандартный образ перло-фана, что даже скучно как то.

Пока бздёшь в воздух и наглая ложь.

Да, да, культура просто бьёт ключом. Хотя это обычный стиль для perl-community, чё уж там удивляться. Вымирайте скорей, динозавры.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.