Forum Webscript.Ru
Программирование => Perl => Тема начата: Kwazar от 10 Марта 2003, 11:48:03
-
В процессе программинга на perl я столкнулся с множеством задач, часть которых я хоть и решил, но чисто по русски - через одно место....
Наверняка в ысталкивались с многими такими ситуациями, интересно как вы их решили.
1)В переменной $site находится html страницы. Естественно такие вещи как \\n там тоже присутствуют. Как перевести эту переменую в массив, разбив его по \\n.
2)Как вытянуть все ссылки из этого html кода, приведя их к полному пути, т.е. преобразовав такие вещи как ../ и ./
3)Как иизменить размер картинки на сервере. Именно не вывести ее в ином формате, а перезаписать. Как узнать текущий ее размер?
Вроде все...
-
Kwazar:
1)В переменной $site находится html ... \\n...
@site = split /\\n/, $site;
первое, что приходит на ум
Kwazar:
2)Как вытянуть все ссылки ...
регулярными выражениями, ./ ../ преобразовывать ими же
Kwazar:
3)Как иизменить размер картинки на сервере...
ImageMagick, наверное
Если размер - это ширина/высота картинки, то им же, но можно и самому в файле покопаться и там найти.
-
2)Как вытянуть все ссылки
HTML::LinkExtor посмотри
-
Как узнать текущий ее размер?
perldoc Image::Size
-
регулярными выражениями, ./ ../ преобразовывать ими же
Я так и сделал, но это кушает очень много памяти у сервера.
Это не есть хорошо
-
Kwazar:
регулярными выражениями, ./ ../ преобразовывать ими же
Я так и сделал, но это кушает очень много памяти у сервера.
Это не есть хорошо
Макс:
HTML::LinkExtor
я бы добавил и HTML::Parser,
а внутри парсера сплошняком регулярные выражения. А как без них?
-
а внутри парсера сплошняком регулярные выражения. А как без них?
Угу. ;)
Я так и сделал, но это кушает очень много памяти у сервера.
Интересно посмотреть на алгоритм такого "откушивания" памяти.
Сдается мне, что ты что-то намудрил...
-
NeoNox, не то слово - действительно намудрил.
Дело в том, что я обрабатываю за раз не одну страницу, и не один десяток. посему и память кушается + я действительно перемудрил с наворотами тоже на регулярных выражениях :)