Автор Тема: Куча не тупых вопросов.  (Прочитано 3362 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Куча не тупых вопросов.
« : 10 Марта 2003, 11:48:03 »
В процессе программинга на perl я столкнулся с множеством задач, часть которых я хоть и решил, но чисто по русски - через одно место....
Наверняка в ысталкивались с многими такими ситуациями, интересно как вы их решили.
1)В переменной $site находится html страницы. Естественно такие вещи как \\n там тоже присутствуют. Как перевести эту переменую в массив, разбив его по \\n.
2)Как вытянуть все ссылки из этого html кода, приведя их к полному пути, т.е. преобразовав такие вещи как ../ и ./
3)Как иизменить размер картинки на сервере. Именно не вывести ее в ином формате, а перезаписать. Как узнать текущий ее размер?

Вроде все...
С уважением Сергей

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Куча не тупых вопросов.
« Ответ #1 : 10 Марта 2003, 13:39:43 »
Цитировать
Kwazar:
1)В переменной $site находится html ... \\n...

@site = split /\\n/, $site;
первое, что приходит на ум
Цитировать
Kwazar:
2)Как вытянуть все ссылки ...

регулярными выражениями, ./ ../ преобразовывать ими же
Цитировать
Kwazar:
3)Как иизменить размер картинки на сервере...
ImageMagick, наверное
Если размер - это ширина/высота картинки, то им же, но можно и самому в файле покопаться и там найти.
Все болезни от нервов, только сифилис от удовольствия

Оффлайн Макс

  • vir magni ingenii
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3534
  • +0/-0
  • 2
    • Просмотр профиля
Куча не тупых вопросов.
« Ответ #2 : 10 Марта 2003, 14:02:04 »
Цитировать
2)Как вытянуть все ссылки
HTML::LinkExtor посмотри
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack. ( George Carrette )

Оффлайн Chs

  • Perl программер
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 1108
  • +0/-0
  • 2
    • Просмотр профиля
    • http://chs.now.at/
Куча не тупых вопросов.
« Ответ #3 : 10 Марта 2003, 17:37:02 »
Цитировать
Как узнать текущий ее размер?

perldoc Image::Size
2B OR NOT 2B = FF

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Куча не тупых вопросов.
« Ответ #4 : 10 Марта 2003, 17:44:51 »
регулярными выражениями, ./ ../ преобразовывать ими же
Я так и сделал, но это кушает очень много памяти у сервера.
Это не есть хорошо
С уважением Сергей

Оффлайн Mog.

  • Фанат форума
  • Ветеран
  • *****
  • Сообщений: 828
  • +0/-0
  • 0
    • Просмотр профиля
Куча не тупых вопросов.
« Ответ #5 : 10 Марта 2003, 18:57:45 »
Цитировать
Kwazar:
регулярными выражениями, ./ ../ преобразовывать ими же
Я так и сделал, но это кушает очень много памяти у сервера.
Это не есть хорошо

Цитировать
Макс:
HTML::LinkExtor

я бы добавил и HTML::Parser,
а внутри парсера сплошняком регулярные выражения. А как без них?
Все болезни от нервов, только сифилис от удовольствия

Оффлайн NeoNox

  • Координатор
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 3012
  • +0/-0
  • 0
    • Просмотр профиля
Куча не тупых вопросов.
« Ответ #6 : 10 Марта 2003, 19:06:49 »
Цитировать
а внутри парсера сплошняком регулярные выражения. А как без них?

Угу. ;)
Цитировать
Я так и сделал, но это кушает очень много памяти у сервера.

Интересно посмотреть на алгоритм такого "откушивания" памяти.
Сдается мне, что ты что-то намудрил...
The documentations is your friend

Оффлайн Kwazar

  • Философ
  • Постоялец
  • ***
  • Сообщений: 201
  • +0/-0
  • 2
    • Просмотр профиля
    • http://www.uhuhu.ru/
Куча не тупых вопросов.
« Ответ #7 : 10 Марта 2003, 19:50:46 »
NeoNox, не то слово - действительно намудрил.
Дело в том, что я обрабатываю за раз не одну страницу, и не один десяток. посему и память кушается + я действительно перемудрил с наворотами тоже на регулярных выражениях :)
С уважением Сергей

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28