Python: преобразовать HTML строку в HTML - PullRequest
0 голосов
/ 01 апреля 2020

Я очищаю страницу с infinite scroll. Когда мой scrapy паук попадает на страницу и возвращает примерно json, например:

{
    "page": 2,
    "num_items": 30,
    "content": "<div data-doc_id=\"1234\" class=\"item_cell has_cover lazy_images\" dir=\"auto\">...."
}

Таким образом, HTML страницы возвращается в виде строки с некоторым escape-символом. Теперь я хочу очистить эту строку. Как мне преобразовать его обратно в HTML?

Ответы [ 2 ]

1 голос
/ 01 апреля 2020
from scrapy.http import HtmlResponse

html_response = HtmlResponse(body=your_json['content'])

# and then
html_response.css('div.item_cell::attr(whatever)').get()

Удачи.

0 голосов
/ 01 апреля 2020

Вы можете использовать HTMLParser: https://docs.python.org/3/library/html.parser.html#html .parser.HTMLParser.feed

или использовать BeautifulSoup https://www.crummy.com/software/BeautifulSoup/bs4/doc/

from bs4 import BeautifulSoup
parsed_html = BeautifulSoup(response['content'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...