Как декодировать html-код с помощью python

-8

Это код, предоставленный из запроса на получение с сервера. Как я вижу, он кодируется с помощью gzip, теперь мне нужно иметь чистый HTML-код.

Пример:

{"Html":"\u003cdiv class=\"panel-body\"\u003e\r\n        \u003cdiv class=\"printContainer\"\u003e\r\n            \u003ca href=\"#\" data-itemid=\"237994\" data-toggle=\"tooltip\" data-placement=\"top\" data-action=\"printProductInfo\" accesskey=\"p\" rel=\"nofollow\"\u003e\r\n                \u003cspan class=\"nonIcon printIcon\"\u003e\u003c/span\u003e\u0026nbsp;Skriv ut\r\n            \u003c/a\u003e\r\n        \u003c/div\u003e\r\n    \u003ctable class=\"table table-striped\"\u003e\r\n                        \u003ctr class=\"info\"\u003e\r\n                    \u003cth colspan=\"2\" class=\"plCategoryHeader\" style=\"margin-top: 0\"\u003e\r\n                        Allm\u0026#228;nt\r\n                    \u003c/th\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n                        Tillv. art. nr.\r\n                    \u003c/td\u003e\r\n                    \u003ctd class=\"plValue\"\u003e\r\n                        T3M78AA#ABB\r\n                    \u003c/td\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n

спросил(а) 2021-01-19T18:24:44+03:00 2 месяца, 3 недели назад
1
1 ответ
-6

response = '{"Html":"\u003cdiv class=\"panel-body\"\u003e\r\n        \u003cdiv class=\"printContainer\"\u003e\r\n            \u003ca href=\"#\" data-itemid=\"237994\" data-toggle=\"tooltip\" data-placement=\"top\" data-action=\"printProductInfo\" accesskey=\"p\" rel=\"nofollow\"\u003e\r\n                \u003cspan class=\"nonIcon printIcon\"\u003e\u003c/span\u003e\u0026nbsp;Skriv ut\r\n            \u003c/a\u003e\r\n        \u003c/div\u003e\r\n    \u003ctable class=\"table table-striped\"\u003e\r\n                        \u003ctr class=\"info\"\u003e\r\n                    \u003cth colspan=\"2\" class=\"plCategoryHeader\" style=\"margin-top: 0\"\u003e\r\n                        Allm\u0026#228;nt\r\n                    \u003c/th\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n                        Tillv. art. nr.\r\n                    \u003c/td\u003e\r\n                    \u003ctd class=\"plValue\"\u003e\r\n                        T3M78AA#ABB\r\n                    \u003c/td\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n"}'
print(response.encode('utf-8'))
# prints: b'{"Html":"<div class="panel-body">\r\n <div class="printContainer">\r\n <a href="#" data-itemid="237994" data-toggle="tooltip" data-placement="top" data-action="printProductInfo" accesskey="p" rel="nofollow">\r\n <span class="nonIcon printIcon"></span> Skriv ut\r\n </a>\r\n </div>\r\n <table class="table table-striped">\r\n <tr class="info">\r\n <th colspan="2" class="plCategoryHeader" style="margin-top: 0">\r\n Allmänt\r\n </th>\r\n </tr>\r\n <tr>\r\n <td class="plHeader">\r\n Tillv. art. nr.\r\n </td>\r\n <td class="plValue">\r\n T3M78AA#ABB\r\n </td>\r\n </tr>\r\n <tr>\r\n <td class="plHeader">\r\n"}'

Или даже проще, для этого конкретного ответа:

response = '{"Html":"\u003cdiv class=\"panel-body\"\u003e\r\n        \u003cdiv class=\"printContainer\"\u003e\r\n            \u003ca href=\"#\" data-itemid=\"237994\" data-toggle=\"tooltip\" data-placement=\"top\" data-action=\"printProductInfo\" accesskey=\"p\" rel=\"nofollow\"\u003e\r\n                \u003cspan class=\"nonIcon printIcon\"\u003e\u003c/span\u003e\u0026nbsp;Skriv ut\r\n            \u003c/a\u003e\r\n        \u003c/div\u003e\r\n    \u003ctable class=\"table table-striped\"\u003e\r\n                        \u003ctr class=\"info\"\u003e\r\n                    \u003cth colspan=\"2\" class=\"plCategoryHeader\" style=\"margin-top: 0\"\u003e\r\n                        Allm\u0026#228;nt\r\n                    \u003c/th\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n                        Tillv. art. nr.\r\n                    \u003c/td\u003e\r\n                    \u003ctd class=\"plValue\"\u003e\r\n                        T3M78AA#ABB\r\n                    \u003c/td\u003e\r\n                \u003c/tr\u003e\r\n                \u003ctr\u003e\r\n                    \u003ctd class=\"plHeader\"\u003e\r\n"}'
print(response[9:-2])

Второй способ также напечатает все новые строки, поэтому у вас есть действующий, хорошо отформатированный HTML.

ответил(а) 2021-01-19T18:24:44+03:00 2 месяца, 3 недели назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема