подскажите, как сделать скрипт который бы извлек все урлы содержащиеся например на страничке: http://top100.rambler.ru/top100/Automotive/index.shtml.ru?
>подскажите, как сделать скрипт который бы извлек все урлы содержащиеся например на
>страничке: http://top100.rambler.ru/top100/Automotive/index.shtml.ru?Возможно множество решений.
Вот пример, от которого можно оттолкнуться и получить то, что вам надо.wget -qO- http://top100.rambler.ru/top100/Automotive/index.shtml.ru | perl -e 'print join("\n", join("", <>)=~m(http://[\w./]+)g)'
но учтите, что он вытаскивает именно *все* урлы (как вы и просили), включая картинки css-ки... при этом вытаскиваются только абсолютные урлы. в общем, не думаю, что это именно то, что вы хотите. чтобы вытащить урлы по другим признакам можно поправить регексп.
>wget -qO- http://top100.rambler.ru/top100/Automotive/index.shtml.ru | perl -e 'print join("\n", join("", <>)=~m(http://[\w./]+)g)'нашел ошибку, урлы в которых есть тире "post-card.ru" не извлекаются...
Специально для вас цитирую:
>можно поправить регексп.В данном случае добавляем символ "-" в класс допустимых символов: m(http://[\w./\-]+)g)'
Почитайте man perlre или Mastering Regular Expressions, знание регексов значительно облегчает жизнь админа.