Есть ли способ получить миллионы записей с помощью sodapy в python? - PullRequest
0 голосов
/ 21 июня 2020

Я пытаюсь прочитать данные из ny c opendata, и в нем около 25 миллионов записей.

def JSON_to_DF(json_file):
    json_data = requests.get(json_file)
    text_data = json.loads(json_data.text)
    pd_data = pd.DataFrame(text_data)
    return pd_data
data= JSON_to_DF('https://data.cityofnewyork.us/resource/erm2-nwe9.json')

Я использовал функцию ограничения, но не могу go более 100 000 записей.

data= JSON_to_DF('https://data.cityofnewyork.us/resource/erm2-nwe9.json?$limit=100000')

Как мне это сделать?

1 Ответ

0 голосов
/ 22 июня 2020

Для больших наборов данных Socrata требует, чтобы вы разбивали на страницы через большие запросы данных. Некоторые наборы данных содержат сотни тысяч, если не миллионы строк. Разбиение на страницы позволяет ему возвращать данные по множеству «страниц», чтобы вы могли накапливать всю загрузку.

Для sodpy .get() извлекает данные по вашему запросу. В этом запросе он возвращает 100 000 строк. После этого Сократа, скорее всего, просто отключится и хочет, чтобы вы переместили его на страницы. Вы захотите посмотреть на sodpy get_all() функцию , которая предназначена для разбивки запроса на страницы ..

...