1 Востаннє редагувалося Пам'ять не може бути READ (27.07.2012 18:16:57)

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

Одим словом є сторінка, на сторінці є html код і в ньому є декілька картинок, які потрібно завантажити.
Регулярний вираз потрібен для наступного тексту:
[code=html]
<a href="/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg"><img class="size-full" src="/albums/тут може бути різний текст включаючи цифри. Текст латиницею.jpg" alt="тут може бути текст, а може і не бути" width="тут цифри" height="також цифри" /></a>
[/code]
Пробував сам скласти, але нічого не знаходило.

2

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

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

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

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

3

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

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

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

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

4 Востаннє редагувалося Пам'ять не може бути READ (28.07.2012 00:07:20)

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

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

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

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