Красивый Суп, добавляющий цитаты атрибутов HTML - PullRequest
0 голосов
/ 26 августа 2011

Заранее спасибо,

В настоящее время я использую красивый суп для анализа тегов комментариев из набора блоков HTML. Проблема, которую я имею, состоит в том, что html, который очищен, не имеет цитат, инкапсулирующих значения атрибута HTML-тегов. Однако BeautifulSoup, кажется, добавляет их, что в некоторых случаях может быть желательно, но, к сожалению, не в моем случае.

Какой будет наилучший способ оставить нетронутым HTML-код без добавления кавычек через BeautifulSoup - или их можно добавить обратно?

1 Ответ

0 голосов
/ 28 августа 2011

У вас есть тег, в котором некоторые значения атрибутов указаны, а некоторые не заключены в кавычки. Что вы подразумеваете под «добавить кавычки назад»: либо отредактируйте каждое значение атрибута , чтобы добавить кавычки (вероятно, ужасная идея), либо добавьте кавычки при рендеринге. Это зависит от того, какую другую обработку вы делаете для тега. Вот код для добавления кавычек при печати:

input = "<html><sometag attr1=dont_quote_me attr2='but this one is quoted'>Text</sometag></html>"

bs = BeautifulSoup(input)

bs2 = bs.find('sometag')
for a in bs2.attrs:
    (attr,aval) = a
    print "%s='%s'" % (attr,aval),

дает attr1='dont_quote_me' attr2='but this one is quoted'

Это зависит от вас, в какую сторону. Я предполагаю, что все они состоят из одного слова, то есть соответствуют регулярному выражению \w+

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...