Я извлекаю некоторый исходный код HTML с веб-страницы для извлечения данных, хранящихся в формате json
Это код:
url = 'https://finance.yahoo.com/quote/SPY'
result = requests.get(url)
c = result.content
html = BeautifulSoup(c, 'html.parser')
scripts = html.find_all('script')
sl =[]
for s in scripts:
sl.append(s)
s = (sl[-3])
s = s.contents
s = str(s)
s = s[119:-16]
json_data = json.loads(s)
Запуск вышеуказанного кода приводит к этой ошибке:
json.decoder.JSONDecodError: Expecting ',' delimiter: line 1 column 7506 (char7505)
Когда я беру содержимое переменной s и передаю его в форматер json, оно распознается как правильный json.
Я использовал следующий веб-сайт для проверки json: http://jsonprettyprint.com/json-pretty-printer.php
Почему эта ошибка возникает при использовании json.loads () в Python?Я предполагаю, что это как-то связано с неправильной кодировкой строки или наличием escape-символов?
Как мне решить эту проблему?