Ravi de vous rencontrer, je m'appelle Kay.
Depuis que j'investissais, je sentais une frontière en Python à partir de janvier de cette année, et je me demandais si cela pouvait s'appliquer à l'investissement, alors j'ai finalement atteint le point d'extraire le cours de l'action de Yahoo Finance. C'est pourquoi je programme depuis un mois (rires) github↓ https://github.com/Kay-Hatsune/NY-Dow/blob/master/dow.py
Langue: Python3
Bibliothèque: urllib, BeautifulSoup
MacBook Pro
shell.sh
$ pip3 install beautifulsoup
Dans mon cas, c'était MacOS, j'ai donc installé pip3. Veuillez noter que les personnes dans les fenêtres sont différentes.
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)
Tirez l'URL de Yahoo Finance avec Beautiful Soup. ↓ Étant donné que le cours de l'action est à l'endroit appelé p, recherchez p dans les données html. ↓ Construisez avec une instruction for et une instruction try except pour spécifier l'emplacement de class = "wlbmIy9W" dans p.
En passant, si vous cliquez avec le bouton droit sur le site et appuyez sur Valider, vous pouvez facilement identifier l'emplacement d'extraction.
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
En Python3, vous devez écrire ce code. Si vous ne l'écrivez pas, une erreur se produira toujours. Peut-être que vous n'en avez pas besoin dans Python2.
shell.sh
$ python dow.py
>>>28,399.81
L'extraction est enfin terminée. Ça a pris 5 heures (rires) Je veux le développer davantage à l'avenir. : stuck_out_tongue_winking_eye:
C'est une lecture incontournable car elle écrit du code plus avancé!
Introduction à la pratique du grattage Web Python
Recommended Posts