Heim >Backend-Entwicklung >Python-Tutorial >Spielen mit einer Stock-API: Ein JavaScript/React-Entwickler lernt Python

Spielen mit einer Stock-API: Ein JavaScript/React-Entwickler lernt Python

DDD
DDDOriginal
2024-12-19 21:05:51874Durchsuche

Playing with a Stock API: A JavaScript/React Developer Learns Python
Playing with a Stock API: A JavaScript/React Developer Learns Python
Playing with a Stock API: A JavaScript/React Developer Learns Python

Als Python-Neuling habe ich mich kürzlich auf eine Reise begeben, um seine Fähigkeiten zu erkunden und dabei mit einer Standard-API zu arbeiten. Unterwegs habe ich gelernt, wie man:

  • Richten Sie eine virtuelle Umgebung ein
  • Pakete verwalten
  • Verwenden Sie Umgebungsvariablen für sensible Daten
  • Stellen Sie HTTP-Anfragen und verarbeiten Sie JSON
  • Fehlerbehandlung und Zeichenfolgenformatierung implementieren
  • Arbeiten Sie mit Pythons Wörterbüchern
  • Verstehen Sie die von APIs bereitgestellten Schemata

Hier ist eine Aufschlüsselung meiner Lernerfahrung und der wichtigsten Erkenntnisse!

1. Python einrichten

Pythons virtuelle Umgebungen (venv) ermöglichen es Ihnen, die Abhängigkeiten Ihres Projekts zu isolieren und so sicherzustellen, dass Ihre Pakete nicht mit anderen in Konflikt geraten. Es ist großartig für die berufliche Weiterentwicklung.

Schritte zum Erstellen und Aktivieren einer virtuellen Umgebung: Erstellen Sie eine virtuelle Umgebung

python -m venv venv

Aktivieren Sie es (Mac/Linux)

source venv/bin/activate

Aktivieren Sie es (Windows)

venvScriptsactivate

Dadurch bleiben die Pakete Ihres Projekts von anderen getrennt.

PaketverwaltungMit pip, dem Paketinstallationsprogramm von Python, habe ich gelernt, Abhängigkeiten zu verwalten:

Pakete installieren

Pip-Installationsanfragen python-dotenv

Anforderungen speichern

Pip-Einfrieren > Anforderungen.txt

Installation gemäß den Anforderungen

pip install -r require.txt

2. Umgebungsvariablen

Um sensible Daten zu schützen, habe ich .env-Dateien für API-Schlüssel und Anmeldeinformationen verwendet:

 .env-Datei

SCHWAB_CLIENT_ID=my_secret_id

SCHWAB_CLIENT_SECRET=my_secret_key

Python-Code

aus dotenv import load_dotenv

Betriebssystem importieren

load_dotenv() # Variablen aus .env laden

api_key = os.getenv(‘SCHWAB_CLIENT_ID’)

Wichtig: Übertragen Sie niemals .env-Dateien an Git. Verwenden Sie eine .gitignore-Datei, um sie auszuschließen.

  • 3. HTTP-Anfragen stellen

Ich habe die Anforderungsbibliothek verwendet, um mit APIs zu interagieren:

Anfragen importieren

Stellen Sie eine GET-Anfrage

response = request.get(url, headers=headers, params=params)

Überprüfen Sie, ob die Anfrage erfolgreich war

if Response.status_code == 200:

data = Response.json() # Antwort in JSON konvertieren

4. Schemata verstehen

Bevor ich mit einem API-Endpunkt interagierte, habe ich dessen Schema untersucht. Ein API-Schema ist wie eine Blaupause, die Ihnen sagt:

  • Anfrageschema: Welche Daten Sie senden müssen, einschließlich erforderlicher Felder, Datentypen und Einschränkungen.
  • Antwortschema: Welche Daten Sie erwarten können, einschließlich Struktur, Datentypen und Beispiele.

Wenn ein API-Endpunkt beispielsweise Aktienkurse abruft, könnte das Schema so aussehen:

Schema anfordern:

{

„Symbol“: „Zeichenfolge“,

„Datum“: „Zeichenfolge (JJJJ-MM-TT)“,

„Intervall“: „Zeichenfolge (z. B. ‚1d‘, ‚1m‘)“

}

Antwortschema:

{

„Symbol“: „Zeichenfolge“,

„Preise“: [

{

„Datum“: „Zeichenfolge (JJJJ-MM-TT)“,

„open“: „float“,

„close“: „float“,

„hoch“: „schweben“,

„niedrig“: „float“,

„Volumen“: „Ganzzahl“

}

]

}

Die Kenntnis des Schemas hilft in zweierlei Hinsicht:

  1. Vorbereitung: Es stellt sicher, dass Sie Ihre Anfrage richtig strukturieren und wissen, wie Sie mit der Antwort umgehen.
  2. Fehlervermeidung: Durch die Einhaltung von Schemata werden ungültige Anfragen oder falsch interpretierte Antworten minimiert.

Schemata haben mir Zeit gespart und das Debuggen bei der Arbeit mit der API erheblich vereinfacht.

5. Arbeiten mit JSON

APIs geben Daten häufig im JSON-Format zurück. So habe ich es in Python gehandhabt:

json importieren

JSON aus einer Datei lesen

mit open(‘tokens.json’, ‘r’) as f:

data = json.load(f)

Schreiben Sie JSON in eine Datei

mit open(‘tokens.json’, ‘w’) as f:

json.dump(data, f, indent=4)

6. Fehlerbehandlung

Pythons Try/Except-Blöcke haben mir geholfen, Fehler elegant zu verwalten:

versuchen Sie:

response = request.get(url)

data = Response.json()

außer Ausnahme als e:

print(f“Fehler: {str(e)}“)

Keine zurückgeben

7. String-Formatierung

Pythons f-strings und die .format()-Methode machen die String-Formatierung unkompliziert:

Verwendung von F-Strings

print(f“Stock: {name}, Preis: ${price:.2f}“)

Verwenden von .format()

print(“Stock: {}, Price: ${:.2f}”.format(name, price))

8. Wörterbuchoperationen

Wörterbücher in Python sind leistungsstark für die Verarbeitung verschachtelter API-Daten:

Nutzen Sie die Standardeinstellung

price = data.get('price', 'N/A')

Greifen Sie auf verschachtelte Wörterbücher zu

stock = data[symbol]

quote = stock.get(‘quote’, {})

price = quote.get('lastPrice', 'N/A')

9. Debugging-Tipps

Debuggen in Python ist einfach und effektiv:

Debugging drucken

print(f“Debug: {variable}“)

Überprüfen Sie die Variablentypen

print(f“Type: {type(data)}“)

Hübsche gedruckte Wörterbücher

json importieren

print(json.dumps(data, indent=2))

10. Authentifizierungsherausforderungen meistern

Eine der größten Hürden, mit denen ich konfrontiert war, bestand darin, die Authentifizierung zum Laufen zu bringen. Ich steckte ein paar Tage lang fest und probierte verschiedene Ansätze aus, ohne Erfolg. Schließlich beschloss ich, den Support zu kontaktieren, um zu verstehen, warum es nicht funktionierte.

Es stellte sich heraus, dass das Problem mit der Art des von mir verwendeten Kontos zusammenhing. Für eine erfolgreiche Authentifizierung benötigte ich sowohl ein Brokerkonto als auch ein Entwicklerkonto. Ich bin zunächst davon ausgegangen, dass nur ein Entwicklerkonto erforderlich ist, die API erfordert jedoch auch Anmeldeinformationen von einem aktiven Brokerage-Konto.

Diese Erfahrung hat mich eine wichtige Lektion gelehrt: Zögern Sie nicht, bei Bedarf um Hilfe zu bitten. Indem ich mein Ego beiseite legte und Rat suchte, gewann ich ein tieferes Verständnis für das Problem und löste es viel schneller, als wenn ich weiter alleine gekämpft hätte

FazitPython ist unglaublich anfängerfreundlich! Folgendes habe ich gelernt:

  • Virtuelle Umgebungen halten Projekte organisiert.
  • Umgebungsvariablen schützen sensible Daten.
  • Bibliotheken wie Anfragen vereinfachen API-Aufrufe.
  • Eine gute Fehlerbehandlung ist von entscheidender Bedeutung.
  • Eindeutige Funktionsnamen und Kommentare verbessern die Lesbarkeit.

Nächste Schritte

  • Tauchen Sie tiefer in die API-Authentifizierung ein.
  • Erkunden Sie die Datenvisualisierung.
  • Fügen Sie eine robustere Fehlerbehandlung hinzu.
  • Automatisierte Tests implementieren.

Abschließende Gedanken
Der beste Weg zu lernen ist, indem man es tut. Haben Sie keine Angst davor, zu experimentieren und Fehler zu machen – jede Herausforderung ist eine Chance, zu wachsen!

Datenanalyse-Repo: https://github.com/Jesse-Chong/Schwab-Market-Analysis

Ursprünglich veröffentlicht bei Medium

Das obige ist der detaillierte Inhalt vonSpielen mit einer Stock-API: Ein JavaScript/React-Entwickler lernt Python. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn