Как сохранить значение из JSON как код HTML, а не как строку, в python? - PullRequest
0 голосов
/ 03 апреля 2019

Получил данные JSON с сайта. Вот часть этого, я заинтересован в.

...
"content":{  
         "rendered":"<p><img class=\"aligncenter size-full wp-image-91555\" src=\"https:\/\/ebook3000.biz\/wp-content\/uploads\/2019\/03\/Edge-May-2019.png\" alt=\"Edge - May 2019 \" width=\"226\" height=\"290\" \/><\/p>\n<p>English |PDF|80 MB<\/p>\n<div class=\"box download  \"><div class=\"box-inner-block\"><i class=\"fa tie-shortcode-boxicon\"><\/i>\n\t\t\t Download<\/p>\n<p><a href=\"https:\/\/dropupload.com\/T97\/2019-05-01_Edge.pdf\" target=\"_blank\" rel=\"nofollow\">https:\/\/dropupload.com\/T97\/2019-05-01_Edge.pdf<\/a><\/p>\n\n\t\t\t<\/div><\/div>\n",
         "protected":false
      },
      "excerpt":{  
         "rendered":"<p>English |PDF|80 MB<\/p>\n",
         "protected":false
      },
      "author":1...

Хотите получить значение из [content] [rendered] в виде HTML-кода для использования его с xpath. Хотите получить значение href ссылки "dropupload".

Вот код в scrapy spider, я сохраняю это значение сейчас:

content = mag['content']['rendered']

Но это сохранено как 'str'. Как можно получить как HTML?

Большое спасибо!

1 Ответ

0 голосов
/ 03 апреля 2019

Итак, у вас есть строка с вашим HTML. Затем вы можете использовать его в отдельном селекторе, как здесь:

from scrapy import Selector
sel = Selector(text=mag['content']['rendered'])
print sel.css('a::attr(href)').get()  # or your css/xpath selector here
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...