использование BS4 на полях, которые содержат escape-символ в python - PullRequest
0 голосов
/ 19 марта 2019

Так что мой контент, который я очищаю, содержит escape-символ в имени класса.

Вот как выглядят данные.

<div class='\"content-review\"'> blah blah blah </div>

Я пытался сделать это:

mydivs = soup.findAll("div", {"class": repr('\"content-review\"')})

и возвращает пустой массив. Я думаю, что у этого есть простое решение, но я не могу понять это.

1 Ответ

0 голосов
/ 19 марта 2019

Экранирующие символы могут не быть вашей проблемой.Я считаю, что "класс" - это зарезервированное слово в Python, поэтому вы не можете использовать его в качестве аргумента ключевого слова.Beautiful Soup обрабатывает это , используя вместо этого ключевое слово аргумент "class_".Попробуйте что-то вроде этого: "

mydivs = soup.findAll("div", class_="content-review")

Если это все еще не работает, то вы можете сказать Beautiful Soup игнорировать экранированные кавычки, например:

import re
mydivs = soup.findAll("div", class_=re.compile("content-review"))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...