KatsuhiroBlog

妻が大好きなシステムエンジニア。IT、ブログ、投資を中心に発信します。

IT

PythonでGoogleの株価を取得してみた【コピペでOK】

投稿日:

米国株を買っているPython初心者「米国株を買っていて、最新の株価をPythonで取得したい。でも、Pythonで株価を取得する方がわからない。コピペでできる方法があれば教えてほしい」

こういった疑問にお答えします。

本記事ではPythonでGoogleの株価を取得する方法について、サンプルコードを公開しています。サンプルコードをコピペすれば、すぐ使えますので、どうぞご覧ください。

こんにちは、かつひろです。この記事を書いている私はシステムエンジニアとして9年ほど働いています。Pythonはここ1年くらい会社のプロジェクトで使っています。

私はGoogle(Alphabet Inc Class A)の株を持っています。Googleの株価をPythonで取得してみたいと思い、いろいろと調べてみました。

しかし、日本の銘柄の株を取得する方法は見つかったのですが、米国の銘柄の株を取得する方法が見当たらなかったので、自分でPythonのソースコードを作ってみました。

それでは以下の順番で進めます。

  1. Googleの株価を取得するPythonのソースコード公開【忙しい人向け】
  2. Google Colabを使ったソースコードの実行方法【Pythonの環境がない人向け】
  3. Googleの株価を取得するPythonのソースコードの説明
スポンサードサーチ

Googleの株価を取得するPythonのソースコード公開【忙しい人向け】

とりあえず、ソースコードだけ知りたい人向けに今回作成したソースコードを公開します。以下のソースコードをコピペしてPythonで実行すればGoogleの株価を取得できます。

import requests
import urllib.request as urlreq
from bs4 import BeautifulSoup

#BloombergのURLを保存
url = "https://www.bloomberg.co.jp/quote/GOOGL:US"

#リンクを取得
r = urlreq.Request(url)

#リンクを開き読み込む
with urlreq.urlopen(r) as r:
    r = r.read()

# Webページのソースコードをパース
soup = BeautifulSoup(r, "html.parser")

# すべてのdivタグ要素を取得
divs = soup.find_all("div")

# 表示する株価に初期値をセット
google_stock = ""

# divタグのクラスをすべて取得
for tag in divs:
    try:
        string_ =tag.get("class").pop(0)
        # 株価のクラス(price)の値を取得
        if string_ in "price":
            google_stock = tag.text
            break
    except:
        pass
    #データが見つからない場合は何もしない

#デバッグ用に株価を表示
print("GOOGL:" + google_stock)

Google Colabを使ったソースコードの実行方法

Pythonのローカル環境を持っていない人向けに「Google Colab」を使って、今回のサンプルコードを実行する方法について解説します。

「Google Colab」とは

Google Colab」とはインターネットに繋がってさえいれば、誰でもPythonが使えるようになるツールです。

詳細は下記の記事をご覧ください。

「Google Colab」でサンプルコードを実行してみよう

Google Colab」へアクセスしてください。(※事前にGoogleアカウントの作成が必要です。)

右上のログインを押してください。そして、Googleアカウントでログインしてください。

「Python3の新しいノートブック」を押してください。

上記のような画面が出ると思います。

import requests
import urllib.request as urlreq
from bs4 import BeautifulSoup

#BloombergのURLを保存
url = "https://www.bloomberg.co.jp/quote/GOOGL:US"

#リンクを取得
r = urlreq.Request(url)

#リンクを開き読み込む
with urlreq.urlopen(r) as r:
    r = r.read()

# Webページのソースコードをパース
soup = BeautifulSoup(r, "html.parser")

# すべてのdivタグ要素を取得
divs = soup.find_all("div")

# 表示する株価に初期値をセット
google_stock = ""

# divタグのクラスをすべて取得
for tag in divs:
    try:
        string_ =tag.get("class").pop(0)
        # 株価のクラス(price)の値を取得
        if string_ in "price":
            google_stock = tag.text
            break
    except:
        pass
    #データが見つからない場合は何もしない

#デバッグ用に株価を表示
print("GOOGL:" + google_stock)

上記のサンプルコードをすべてコピーしてください。

上記のようにコピーしたサンプルソースを貼り付けてください。貼り付けたら「Shift + Enter」を押してください。

上記のようにGoogleの株価が表示されます。こんな感じでコピペだけで使えるサンプルコードになってます。

Googleの株価を取得するPythonのソースコードの説明

それでは次に今回作成したサンプルコードについて、上から順番に簡単に説明します。

Pythonライブラリの宣言

import requests
import urllib.request as urlreq
from bs4 import BeautifulSoup

今回はWebスクレイピングという技術を使って、Googleの株価を取得しました。Webスクレイピングを簡単に説明すると「インターネット上のサイトから特定のデータを取得する技術」です。

上記ソースコードはWebスクレイピング用のPythonライブラリを宣言しています。

データ取得先のサイトのURLを保存

今回は「Bloomberg」というサイトからデータを取得しました。

#BloombergのURLを保存
url = "https://www.bloomberg.co.jp/quote/GOOGL:US"

上記ソースコードはBloombergのGoogleの株価のページのURLを保存しています。

上記の「1,119.94」の部分を取得する感じです。

データ取得の事前準備

次にデータ取得の事前準備を行います。

#リンクを取得
r = urlreq.Request(url)

#リンクを開き読み込む
with urlreq.urlopen(r) as r:
    r = r.read()

# Webページのソースコードをパース
soup = BeautifulSoup(r, "html.parser")

上記ソースコードは、先ほど保存したURLのサイトを分析するおまじないです。これで準備完了です。

divタグ要素をすべて取得

それでは、次にデータを取得していきます。

# すべてのdivタグ要素を取得
divs = soup.find_all("div")

上記ソースコードはdivタグ要素をすべて取得するソースコードです。

今回取得したい株価は上記のようにdivタグの中にいたので、divタグを取得するようにしました。

株価の取得

divタグの要素を取得したので、あとは株価を取得するだけです。

# 表示する株価に初期値をセット
google_stock = ""

# divタグのクラスをすべて取得
for tag in divs:
    try:
        string_ =tag.get("class").pop(0)
        # 株価のクラス(price)の値を取得
        if string_ in "price":
            google_stock = tag.text
            break
    except:
        pass
    #データが見つからない場合は何もしない

上記ソースコードで株価を取得しています。

今回取得する株価は上記のように「div」タグでclass名が「price」だったので、「div」タグの中でclassが「price」となっているものを取得するようにしました。

株価の出力

最後に取得した株価を出力しています。

#デバッグ用に株価を表示
print("GOOGL:" + google_stock)

最後に

今回は、米国株の株価をPythonで取得したい人向けに、Googleの株価を取得する方法について解説しました。

今回はGoogleを例として使いましたが、サンプルソースのURL部分を「Bloomberg」のサイトの別銘柄のURLに変更すればそのまま流用できますよ。

こんな感じでたまにPythonに関する記事を書いてますので、よければTwitterフォローお願いします。

以上です。

-IT

執筆者:

関連記事

PythonでMeCabを使う方法【絶対にインストールが失敗しない方法教えます】

PythonでMeCabを使いたいが、やり方がわからない。Mac、Windowsでインストール方法が違ってよくわからない。インストールが失敗して挫折しそう。誰か助けて! こういった質問にお答えします。 …

オリジナルサービスが開発できるプログラミングスクール5選【現役SEが解説】

オリジナルサービス、アプリを開発したい人「オリジナルサービス、アプリを開発したい!オリジナルサービス、アプリが開発できるプログラミングスクールが知りたいな」 こういった疑問にお答えします! 本記事を書 …

【現役SEが語る】システムエンジニアに将来性はあるのか

システムエンジニアの将来性が気になる人「今後AIがプログラミングするようになるから、システムエンジニアって将来性がないって聞くけど本当だろうか?現役システムエンジニアの見解が知りたいな」 こういった疑 …

ディープラーニングの仕組みを無料で学べるチュートリアルが公開

ディープラーニング、AI技術に興味があるけど、何から始めて良いかわからない。画像認識や自然言語処理を自分で作ってみたいがハードルが高そう。 こういった疑問にお答えします。 こんにちは、かつひろです。 …

ポテパンキャンプのカリキュラムで本当にエンジニアになれるの?

※本ページの情報は2019年10月時点のものです。最新情報はポテパンキャンプの公式サイトにてご確認ください。 ポテパンキャンプのカリキュラムが気になる人「ポテパンキャンプのカリキュラムってどんなことを …