2016-07-16 6 views
0

Простой вопрос на самом деле, но почему-то я не могу понять это. У меня есть следующее, давайте назовем это «s»:Извлечение значения атрибута 'style'

<tr> 
    <td class="some_class"> 
    <span class="outer_class"> 
     <span class="inner_class" style="width:86.0px"></span> 
    </span> 
    </td> 
<td>Variable_name</td> 
</tr> 

Я хочу, чтобы извлечь значение «стиль», то есть. 86.0px (текст или строка, мне все равно).

Я пробовал:

s.find(attrs={"style"}) 

но не возвращает значение "None" (но она существует, в худшем случае, он имеет значение 0.0). и .contents возвращает все значение между тегами.

Спасибо за помощь.

ответ

0

Поставлено.

width_long=s.find_all('tr')[0].find_all('span')[1].get('style') 

Необходимо обязательно запросить ответ, конечно.

0

возможно: вар с.о. = document.querySelectorAll ('inner_class. '), widthValue = сд [0] .attributes [' стиль '] value.replace (' ширина:', '').

0

Это может возвращать список стиля всех пролетов:

allSpanStyle = map(lambda x: x.get('style'), s.find_all("span")) 
notNoneStyle = [x for x in allSpanStyle if x is not None] 

К сожалению, кажется, что стиль является строкой Юникода. Вы должны использовать программу Regular Expression или handcrafted для ее анализа.

+0

Спасибо. Я не против играть немного с регулярным выражением или с некоторыми ручными манипуляциями строк, если формат согласован (и в этом случае он будет). –

Смежные вопросы