Не удается преобразовать html в JSON

#python #json #automation #python-requests

#python #json #автоматизация #python-запросы

Вопрос:

 import json,requests,sys,os

url='https://www.timeanddate.com'
response=requests.get(url).text
data=json.loads(response.text)
weatherData=response.json(response)
  

Ошибка, которую я получаю, это:

 AttributeError: 'str' has object has no attribute 'json'
  

Комментарии:

1. Ммм, response это уже текст (строка 4). Затем вы снова вызываете response.text .

Ответ №1:

Что это за строка weatherData=response.json(response) ?
Я думаю, что это будет работать

 import json
response=requests.get(url)
weatherData=json.loads(response.text)
  

Теперь weatherData это словарь python.

Ответ №2:

  1. Если URL-адрес в вопросе является фактическим URL-адресом, и вы на самом деле пытаетесь преобразовать весь HTML в ответе в JSON, это будет невозможно. HTML и JSON не являются конвертируемыми форматами. Вам нужно будет найти URL-адрес API, который будет возвращать фактические данные JSON. Может быть, вы хотите оформить заказ https://www.timeanddate.com/services/api /

  2. Если URL-адрес в вопросе является фиктивным URL-адресом, и вы используете фактический URL-адрес, который возвращает ответ JSON, то смотрите Документацию по запросам здесь, чтобы узнать, как получить JSON из ответа. https://requests.readthedocs.io/en/master/user/quickstart/#json-response-content