• Проблема с кодировкой при парсинге русского сайта?

    igorzakhar
    @igorzakhar
    Смотрим HTML через, например, Chrome DevTools:

    5b73266f7e7db479582268.png

    Читаем в документации к BeautifulSoup 4 (раздел "Entities" ):
    An incoming HTML or XML entity is always converted into the corresponding Unicode character.


    >>> from urllib.request import urlopen
    >>> from bs4 import BeautifulSoup
    >>> html = urlopen('https://beton24.ru/sochi/beton/')
    >>> bs = BeautifulSoup(html.read(), 'lxml')
    >>> result = bs.findAll("span", "catalog-index__link-text")[1]
    >>> result.text.replace(u'\xa0',' ').replace(u'\u2009', '')
    'от 3836 ₽'
    Ответ написан
    Комментировать