Загрузка данных JSON с веб-страницы? - PullRequest
0 голосов
/ 14 февраля 2019

Я пытаюсь загрузить данные из iex api, используя python, и в настоящее время я нахожусь в точке, где я получаю данные, но теперь я хочу отформатировать их.

в основном я получаю много данных, которыемне все равно, я просто хочу иметь раздел "float".

Данные должны выглядеть следующим образом:

Ticker, Float,

AAPL, 4700000000,(что-то вроде этого)

Код, который я использую:

import requests 

url = "https://api.iextrading.com/1.0/stock/aapl/stats" 

response = requests.get(url).json()

print (response)

Я был бы очень счастлив, если бы кто-то мог объяснить мне, как это сделать.

С уважением

Сейчас у меня есть код:

import requests 

url = "https://api.iextrading.com/1.0/stock/aapl/stats" 

response = requests.get(url).json()

data = (response['symbol'], response['float'])

import json filename='resp.json'

with open(filename, 'a+') as outfile:
    json.dump(data, outfile, indent=4)

import requests 

url = "https://api.iextrading.com/1.0/stock/tsla/stats" 

response = requests.get(url).json()

data = (response['symbol'], response['float'])

import json filename='resp.json'

with open(filename, 'a+') as outfile:
    json.dump(data, outfile, indent=4)

Я хотел бы, чтобы данные отображались как:

Тикер, Число с плавающей запятой,

AAPL, 4700000000,

TSLA, 1700000000,

(тикер и поплавок не обязательно должны быть размещены выше, я мог бы сделать это сам в запросе на превосходную мощность в любом случае).

Ответы [ 2 ]

0 голосов
/ 14 февраля 2019

Ваш код делает именно то, что он должен делать, если вы хотите получить определенную часть json, просто получите к нему доступ.

import requests 

url = "https://api.iextrading.com/1.0/stock/aapl/stats" 

response = requests.get(url).json()

print(response['float'])
>4705473314
print(response['symbol'])
>'AAPL'

print(response['symbol'], response['float'])

для хранения response в файле json, мы можем сделать что-токак это

import json
filename='resp.json'

with open(filename, 'w') as outfile:
    json.dump(response, outfile, indent=4)
0 голосов
/ 14 февраля 2019

Вы можете просто рассматривать это как словарь.response['float'] даст вам поплавок.Аналогично для любой клавиши.

import requests
url = "https://api.iextrading.com/1.0/stock/aapl/stats"
response = requests.get(url).json()
print (response['float'])
print(response['symbol'])

Вывод

4705473314
AAPL
...