Extract Strings from an HTML file

I need an sh рукописный шрифт will get text from an html file I download the file with

wget website.com/link_123456789 -O 'testfile.txt'

the full contents of that file пашите located at this pastebin

But you don't need all of that just the important lines

<br>
            <IFRAME style="max-width: 850px;" SRC="http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html" FRAMEBORDER=0 MARGINWIDTH=0 MARGINHEIGHT=0 SCROLLING=NO width="100%" HEIGHT=450></IFRAME>
            <br><br>
            <p>

I need the texthttp://vodlocker.com/embed-wrdlm4dbigu4-850x450.html from the file.

Is there в простой answer to work with other strings to?

3
задан 25 December 2015 в 19:52

5 ответов

Используя awk и несколько разделителей для -F

searchfor="vodlocker"
wget -q -O- http://pastebin.com/raw/VbrXHEYd | awk -F'SRC="|"' '/SRC/ && /'"$searchfor"'/  {print $4}'
<час>

Пример произвел:

$ searchfor="vodlocker"; wget -q -O- http://pastebin.com/raw/VbrXHEYd | awk -F'SRC="|"' '/SRC/ && /'"$searchfor"'/  {print $4}' 
http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html
2
ответ дан 1 December 2019 в 15:55

Используя grep с PCRE (-P):

grep -Po 'SRC="\K[^"]+(?=")' testfile.txt

С sed:

sed -nr 's/.*SRC="([^"]+)".*/\1/p' testfile.txt

И берет желаемую строку, включенную в двойные кавычки, и имейте SRC= впереди.

Пример:

% wget -q -O- http://pastebin.com/raw/VbrXHEYd | grep -Po 'SRC="\K[^"]+(?=")'      
http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html

% wget -q -O- http://pastebin.com/raw/VbrXHEYd | sed -nr 's/.*SRC="([^"]+)".*/\1/p'
http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html
2
ответ дан 1 December 2019 в 15:55

Вы также можете использовать html2 с sed:

$ curl -s http://pastebin.com/raw/VbrXHEYd | html2 | sed '/iframe\/@src=/!d;s/^.*src=//'
http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html
0
ответ дан 1 December 2019 в 15:55

Я просто обнаружил щенок , это является потрясающим!

$ curl -s https://pastebin.com/raw/VbrXHEYd | pup 'iframe attr{src}'

Результат

http://vodlocker.com/embed-wrdlm4dbigu4-850x450.html
0
ответ дан 1 December 2019 в 15:55

С тех пор он запросил на интерактивный сценарий оболочки, это может быть альтернативой (предполагающий, что HTML загружается на Ваш ПК). Скопируйте следующее в Gedit:

#!/bin/sh
echo -n "Please enter the name of the website (such as vodlocker): "
read site

wget -c $(grep IFRAME ~/Downloads/VbrXHEYd.html | awk '/<IFRAME/ {print $4}' | awk -F'"' '{print $2}')
  1. Сохраните файл как somename.sh.

  2. Теперь, дайте исполнимые полномочия файла:

    chmod a+x /path/to/somename.sh
    
  3. Затем петляйте как:

    sh /path/to/somename.sh
    

Вот снимок экрана:

1

0
ответ дан 1 December 2019 в 15:55

Другие вопросы по тегам:

Похожие вопросы: