Как исправить грязный JSON файл полученный при парсинге
При парсинге получаю "грязный" Json файл, в котором в начале и в конце имеются элементы, которые не являются форматом Json.
Код программы
import json
import cloudscraper
from parsel import Selector
url = "https://opensea.io/rankings"
def Info():
scraper = cloudscraper.create_scraper()
osinfo = scraper.get(url)
sel = Selector(text=osinfo.text)
data = sel.xpath('//*[@id="__NEXT_DATA__"]').get()
with open('data.txt','w') as outfile:
outfile.write(data)
data = json.load()
print(data)
if __name__ == "__main__":
Info()
Грязный Json файл
<script id="__NEXT_DATA__" type="application/json">{"props":{"isDesktop":true, ...} </script>
Т.е мешается script, который парсится со странички. Как его можно убрать?
Ответы (1 шт):
Автор решения: Axl Alert
→ Ссылка
Помогло добавление в конец xpath "/text()".
Вот так выглядит исправленный вариант:
data = sel.xpath('//*[@id="__NEXT_DATA__"]/text()').get()