Как удалить юникод?

Во время стирания веб-страниц и после избавления от всех html-тегов я получил черный телефонный символ \ u260e в юникоде (☎). Но в отличие от этого ответа я тоже хочу избавиться от него.

Я использовал следующие регулярные выражения в Scrapy для устранения тегов html:

pattern = re.compile("<.*?>|&nbsp;|&amp;",re.DOTALL|re.M) 

Затем я попытался сопоставить \ u260e, и я думаю, что меня поймал язва обратной косой черты . Я безуспешно пробовал эти шаблоны:

 pattern = re.compile("<.*?>|&nbsp;|&amp;|\u260e",re.DOTALL|re.M) pattern = re.compile("<.*?>|&nbsp;|&amp;|\\u260e",re.DOTALL|re.M) pattern = re.compile("<.*?>|&nbsp;|&amp;|\\\\u260e",re.DOTALL|re.M) 

Ничего из этого не получилось, и у меня все еще есть \ u260e как результат. Как я могу заставить это исчезнуть?

3 Solutions collect form web for “Как удалить юникод?”

Используя Python 2.7.3, для меня работает отлично:

 import re pattern = re.compile(u"<.*?>|&nbsp;|&amp;|\u260e",re.DOTALL|re.M) s = u"bla ble \u260e blo" re.sub(pattern, "", s) 

Вывод:

 u'bla ble blo' 

Как указано в @Zack, это работает из-за того, что строка теперь находится в юникоде, т. \u260e Строка уже конвертирована, а последовательность символов \u260e теперь является, вероятно, двумя байтами, которые использовались для написания этой маленькой черный телефон ☎ (:

Как только строка, подлежащая поиску, и регулярное выражение имеет сам черный телефон, а не последовательность символов \u260e , они оба совпадают.

Если ваша строка уже юникод, есть два простых способа. Очевидно, что второй будет влиять не только на ☎.

 >>> import string >>> foo = u"Lorum ☎ Ipsum" >>> foo.replace(u'☎', '') u'Lorum Ipsum' >>> "".join(s for s in foo if s in string.printable) u'Lorum Ipsum' 
  • Удалите символы не-ascii, но оставьте периоды и пробелы для получения дополнительной информации о string.printable
  • Самый лучший способ удалить несколько пробелов в строке на Python, если вы не хотите использовать несколько пробелов.

Вы можете попробовать с BeatifulSoup, как объяснено здесь , с чем-то вроде

 soup = BeautifulSoup (html.decode('utf-8', 'ignore')) 
  • Установка Scrapy на ubuntu 14.04 не работает
  • Куки-файлы Python Scrapy не работают, но работают в PHP cURL-коде
  • pip не может правильно установить пакеты: Permission denied error
  • Скрученная ошибка Python - проблемы с скрипом
  • Как имитировать запрос xhr с помощью Scrapy при попытке обхода данных из веб-сайта на основе ajax?
  • Модификация экспорта CSV в scrapy
  • scrapy, как импортировать настройки, чтобы переопределить его
  • Python Scrapy: преобразование относительных путей в абсолютные пути
  • «OSError: Операция не разрешена» при установке Scrapy в OSX 10.11 (El Capitan) (защита целостности системы)
  • Как очистить веб-сайт с помощью защиты сукури
  • Почему XMLFeedSpider не выполняет итерацию через назначенные узлы?
  • Python - лучший язык программирования в мире.