#python #html #unicode #lxml
#python #HTML #юникод #lxml
Вопрос:
Я извлекаю поле на веб-странице объявления, текстовое содержимое тега html выглядит следующим образом…
35amp;nbsp;new
В python извлеченные данные выглядят следующим образом…
35xa0new
Как мне работать с unicode в python для преобразования в обычную строку?
«35 новых»
какую библиотеку мне использовать?
Спасибо
Ответ №1:
Избегайте работы с обычными строками, когда это возможно; unicode
s, как правило, более полезны для текста, и есть много хорошо известных решений для манипулирования и работы с ними.
Ответ №2:
Вы получаете строки Unicode от анализатора. Вы можете заменить определенные символы, если предпочитаете другие. Например, ваш xa0
— неразрывный пробел, и вы можете заменить его обычным пробелом:
text = text.replace(u"xa0", u" ")
Может быть много таких символов, которые вы хотите изменить, поэтому может потребоваться длительный процесс поиска всех тех, которые встречаются в ваших данных.