1 Востаннє редагувалося Адріян Ігорович (27.07.2012 19:16:57)

Тема: Допоможіть скласти регулярний вираз на shell

Одим словом є сторінка, на сторінці є html код і в ньому є декілька картинок, які потрібно завантажити.
Регулярний вираз потрібен для наступного тексту:

<a href="/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg"><img class="size-full" src="/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg" alt="тут може бути текст, а може і не бути" width="тут цифри" height="також цифри" /></a>

Пробував сам скласти, але нічого не знаходило.

2

Re: Допоможіть скласти регулярний вираз на shell

bunyk@xubuntyk:~$ grep -o "src=\"[^\"]*\.jpg\"" page.htm | grep -o "/albums/[^\"]*\.jpg"
/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg

Або простіший варіант, який щоправда бере не тільки атрибути src:

bunyk@xubuntyk:~$ grep -o "/albums/[^\"]*\.jpg" page.htm 
/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg
/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg
Подякували: Адріян Ігорович, Voron2

3

Re: Допоможіть скласти регулярний вираз на shell

Але взагалі, якщо тобі треба завантажити картинки, то є простіший спосіб:

wget -c -r -l 1 -A.jpg [url]http://url.to/page.html[/url]

де -c означає докачувати частково завантажені
-r - рекурсивно переходити по посиланнях
-l 1 - на глибину одного переходу
-A.jpg - і брати лише файли формату jpg

4 Востаннє редагувалося Адріян Ігорович (28.07.2012 01:07:20)

Re: Допоможіть скласти регулярний вираз на shell

На рахунок того що за допомогою wget можна так завантажувати - знаю, просто треба дещо інше.

Re: Допоможіть скласти регулярний вираз на shell

bunyk, велике спасибі.