[PYTHON] Zugriff mit dem Cache beim Lesen von_json mit Pandas

Zweck

Generieren Sie nicht jedes Mal Kommunikation, wenn Sie mit read_json einen DataFrame aus einer Webressource erstellen

Hintergrund

Ich möchte Informationen über die Web-API abrufen und verschiedene Dinge tun, aber die Anzahl der Anfragen ist begrenzt. Wenn ich jedes Mal darauf zugreife, werde ich bald in die Obergrenze geraten. Ich benötige beim Schreiben von Testcode keine Echtzeitinformationen, daher möchte ich diese lokal im Cache behalten.

Bibliothek

  1. pandas
  2. requests
  3. requests_cache
  4. StringIO

Beispielcode

import pandas as pd
import requests
import requests_cache
from io import StringIO

requests_cache.install_cache()
response = requests.get("https://financialmodelingprep.com/api/v3/income-statement/AAPL?apikey=demo")
content = response.content.decode()
df = pd.read_json(StringIO(content))

Kommentar

requests_cache Wenn beim Abrufen von request.get ein Cache vorhanden ist, wird keine Kommunikation ausgeführt und eine Antwort aus dem Cache zurückgegeben. Sie können den Cache-Namen mit "request_cache.install_cache (" test ")" ändern und jeden einzelnen verwalten. Das Caching erfolgt mit SQLite. Sie können den Cache löschen, indem Sie die Datei löschen. StringIO Da der Dateiname und die URL in "pd.read_json" angegeben sind, kann der durch Anforderungen erhaltene "str" nicht so angegeben werden, wie er ist. Mit "StringIO (content)" können Sie "str" wie eine Datei behandeln.

Recommended Posts

Zugriff mit dem Cache beim Lesen von_json mit Pandas
Wie man nüchtern mit Pandas schreibt
So erstellen Sie einen Datenrahmen und spielen mit Elementen mit Pandas
Wie man Japanern nicht entgeht, wenn man mit json in Python umgeht
So arbeiten Sie mit BigQuery in Python
So weisen Sie den Index im Pandas-Datenrahmen neu zu
Lesen von CSV-Dateien mit Pandas
Umgang mit Speicherlecks in matplotlib.pyplot
Umgang mit Fehlern beim Auftreffen auf pip pip
[REAPER] Wie man Reascript mit Python spielt
[Python] Wie man Excel-Dateien mit Pandas liest
Umgang mit Laufzeitfehlern in subprocess.call
Wie man tkinter mit Python in Pyenv benutzt
Verwendung von Pandas 2
Konvertieren Sie 202003 bis 2020-03 mit Pandas
So zeigen Sie im gesamten Fenster an, wenn Sie das Hintergrundbild mit tkinter einstellen
So konvertieren / wiederherstellen Sie einen String mit [] in Python
So "cache-fähiger" Zugriff auf FPGA-Speicher von Linux
So führen Sie eine Hash-Berechnung mit Salt in Python durch
Erklären Sie ausführlich, wie Sie mit Python einen Sound erzeugen
So konvertieren Sie horizontal gehaltene Daten mit Pandas in vertikal gehaltene Daten
Umgang mit Pyenv-Initialisierungsfehlern bei Fischen 3.1.0
So führen Sie mit OpenCV ein Null-Padding in einer Zeile durch
So führen Sie Tests zusammen mit Python unittest aus
So extrahieren Sie Nullwerte und Nicht-Nullwerte mit Pandas
So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
So geben Sie die CSV eines mehrzeiligen Headers mit Pandas aus
So konvertieren Sie eine JSON-Datei mit Python Pandas in eine CSV-Datei
[Python] Umgang mit Pandas read_html Lesefehler
Beenden bei Verwendung von Python in Terminal (Mac)
Ich habe versucht zusammenzufassen, wie man Pandas von Python benutzt
Konvertieren Sie numerische Variablen mit Pandas in kategoriale Variablen, indem Sie einen Schwellenwert festlegen
Vorgehensweise beim Ausführen von Transaktionen: In Anaconda fehlgeschlagen
So extrahieren Sie mit Pandas Daten, denen der Wert nan nicht fehlt
Umgang mit dem Fehler "Typfehler: Keine übereinstimmende Signatur gefunden" bei Verwendung von pandas fillna
Wie aktualisiere ich mit SQLAlchemy?
Wie man Pandas Rolling benutzt
Wie man mit Theano besetzt
Wie mit SQLAlchemy ändern?
So trennen Sie Zeichenfolgen mit ','
Wie man RDP auf Fedora31 macht
Wie man in Python entwickelt
Wie lösche ich mit SQLAlchemy?
[TensorFlow 2 / Keras] Ausführen des Lernens mit CTC Loss in Keras
Umgang mit statischen Dateien bei der Bereitstellung in der Produktion mit Django
So geben Sie ein Dokument im PDF-Format mit Sphinx aus
So extrahieren Sie einen Termin in Google Kalender mit Python
So laden Sie keine Bilder, wenn Sie PhantomJS mit Selen verwenden
Einfallsreichtum beim speichersparenden Umgang mit Daten mit Pandas
[Django] Wie man Eingabewerte im Voraus mit ModelForm angibt
So manipulieren Sie das DOM im Iframe mit Selen
So lösen Sie den CSRF-Schutz bei Verwendung von AngularJS mit Django
So geben Sie Befehlszeilenargumente beim Debuggen mit PyCharm an
[AWS] Umgang mit dem Fehler "Ungültiger Codepunkt" in CloudSearch
Für Anfänger, wie man mit häufigen Fehlern in Keras umgeht
Vorsichtsmaßnahmen bei der Verwendung von Python mit AtCoder
Vorsichtsmaßnahmen beim Ändern der Unix-Zeit in Datetime-Typ in Pandas
Dinge, die Sie bei der Verwendung von CGI mit Python beachten sollten.