Schön dich kennenzulernen, mein Name ist Kay.
Seit ich investiert habe, habe ich seit Januar dieses Jahres eine Grenze in Python gespürt und mich gefragt, ob sie auf Investitionen angewendet werden kann, sodass ich endlich den Punkt erreicht habe, an dem ich den Aktienkurs von Yahoo Finance extrahiert habe. Deshalb programmiere ich seit einem Monat (lacht) github↓ https://github.com/Kay-Hatsune/NY-Dow/blob/master/dow.py
Sprache: Python3
Bibliothek: urllib, BeautifulSoup
MacBook Pro
shell.sh
$ pip3 install beautifulsoup
In meinem Fall war es MacOS, also habe ich pip3 installiert. Bitte beachten Sie, dass Personen in Fenstern unterschiedlich sind.
dow.py
import urllib.request
import ssl
from bs4 import BeautifulSoup
url = "https://finance.yahoo.co.jp/quote/%5EDJI"
ssl._create_default_https_context = ssl._create_unverified_context
html = urllib.request.urlopen(url)
soup = BeautifulSoup(html, "html.parser")
p = soup.find_all("p")
dow = ""
for tag in p:
try:
string_ = tag.get("class").pop(0)
if string_ in "wlbmIy9W":
dow = tag.string
break
except:
pass
print(dow)
URL von Yahoo Finance mit Beautiful Soup abrufen. ↓ Da sich der Aktienkurs an der Stelle mit dem Namen p befindet, suchen Sie in den HTML-Daten nach p. ↓ Konstruieren Sie mit einer for-Anweisung und einer try without-Anweisung, um die Position von class = "wlbmIy9W" in p anzugeben.
Übrigens, wenn Sie mit der rechten Maustaste auf die Site klicken und auf Validieren klicken, können Sie den Extraktionsort leicht identifizieren.
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
In Python3 müssen Sie diesen Code schreiben. Wenn Sie es nicht schreiben, tritt immer ein Fehler auf. Vielleicht brauchen Sie es in Python2 nicht.
shell.sh
$ python dow.py
>>>28,399.81
Die Extraktion ist endgültig abgeschlossen. Es hat 5 Stunden gedauert (lacht) Ich möchte es in Zukunft weiterentwickeln. : stick_out_tongue_winking_eye:
Dies ist ein Muss, da es fortgeschritteneren Code schreibt!
Einführung in die Python-Web-Scraping-Praxis
Recommended Posts