LINUX.ORG.RU

sed выбрать значения с html

 


0

1

День добрый! подскажите есть html файлик в нем много раз повторяющееся <span class=«MainBroadcastViewers»>690</span> как можно при помощи sed или чем то другим считать в переменную эти числа?

Ты бы сразу спеца по sed'у позвал. emulek, подскажешь челвеку?

Eddy_Em ☆☆☆☆☆ ()
# считываем все числа в виде только чисел разделённых \n
V1=$(sed -rn 's~<span class=«MainBroadcastViewers»>([[:digit:]]+)</span>~\1~p' inputfile)
# загоняем их в массив
V2=( $V1 )

другой вариант

while read VAR; do
# здесь делаемм что-то с $VAR, в которой одно число
done < <(sed -rn 's~<span class=«MainBroadcastViewers»>([[:digit:]]+)</span>~\1~p' inputfile)
проверять лениво.

emulek ()

Сходу можно что-нить типа

 cat file.html | grep MainBroadcastViewers | awk -F'>' '{print $2};' | awk -F'<' '{print $1};'
но это довольно грубо и в лоб.

ava1ar ()

Регексы слишком привязанны к разметке

ruby -e 'require "nokogiri"; Nokogiri::HTML(STDIN.read ,nil, "UTF-8").css("span.MainBroadcastViewers").each{|e| print e.content, " "}' < input.html
sdio ★★★★★ ()
Ответ на: комментарий от ava1ar

Отлично! Премного благодарен! Потом удаляю строку из которой уже получил значение и тд. Спасибо!

woodsman ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.