Conoha WINGでスクレイピング!Pythonの自動化・効率化をして注目商品の価格を週一回自動で取得する【コピペで動く!】

スポンサーリンク
Python

ConoHa WINGではPythonを利用できますので、自動での定期実行など、機械に任せた方が確実にできる事などの自動化を進めていきたいと思います。収集したデータを用いて、景気動向や今後の値動きの予測などの参考にしたいと思います。

やろうと思ったきっかけ

以下のようなツイート・記事を見て、実際どうなんだろうかと思い、定期的に調べてみようと思った次第です。

ZeroHedge
ZeroHedge - On a long enough timeline, the survival rate for everyone drops to zero

実際の価格は国、さらに言えば店などで違うのでしょうけれども概略として価格コムの価格推移チャートを利用することにします。

実際できること・行う事

スクレイプ禁止だったり、悪用禁止ということもありえますので、スクリーンキャプチャにします。

調査対象はロレックスコスモグラフ デイトナという高級腕時計とします。

サーバーに負荷をかけないように週一回の調査とします。

また、PythonのSelenium経由chromedriverを用いてのアクセスですが、日本語フォントを入れてないので、日本株が文字化けしている状況になっています。

driver.save_screenshot 関数を用いてキャプチャーをとるようにしています。

実際のコードは以下のようになります。

#!/usr/local/bin/python
# -*- coding: utf-8 -*-
import sys
import io

sys.stdin = io.TextIOWrapper(sys.stdin.buffer, encoding='utf-8')
#sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
sys.stderr = io.TextIOWrapper(sys.stderr.buffer, encoding='utf-8')

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
import chromedriver_binary

options = Options()
options.add_argument('--headless')
options.add_argument("--no-sandbox")
options.add_argument("--ignore-certificate-errors")
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--user-agent=Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.<OS build number>')

driver = webdriver.Chrome(executable_path="/home/cXXXXXXX/local/chromium1002917/chromedriver",options=options)
driver.set_page_load_timeout(10)

url = "https://kakaku.com/item/K0000866568/pricehistory/"

try:
	driver.set_window_size(700,1000)
	driver.get(url)
	driver.implicitly_wait(10)
	driver.find_element_by_xpath('//*[@id="main"]/div[1]/div/div[3]/input[4]').click()
except:
    print("error")

driver.save_screenshot('./tmp/RLX.png')

driver.quit()

GeForce RTXのある商品の価格推移は以下のようになっているようです。

こちらのサイトなど参考にさせていただきました。ありがとうございました。

ConoHa WING上でChromiumのSeleniumを動かす
 前提この記事で導入したPython 3.10.5を利用しているpip install seleniumでSeleniumのライブラリをいれておく手順Chromiumのインストールここから2022/06/28現在、最新のChromium安定

継続的に高額商材の価格推移をトラックしていきたいと思います。

ConoHa WINGについて以下のような記事を書いています。

自動化・効率化については以下のような記事を書いています。

Herokuで株式市場のセンチメント調査に関する記事です。

ディスクレーマー

投資に関する免責事項情報の提供・作業代行を目的としており、投資勧誘を目的とするものではありません。

投資・Python・課題解決に関する記事をご紹介します。

Python高速化! for文は遅いので、”これ”を使うと30倍早いですよ!【Google ColabのPython:コピペで動く!】
【コピペで動く!】Pythonで1.5GBのcsvファイル読み込み高速化:1分5秒⇒4秒程度 DASK , pickle (Pythonコードあり)
【コピペで動く!】日本株、米国株で個別銘柄ベータ値(β値)を簡単に調べる方法 Python 米国株 Webサービス&コード 【Google Colabで違いをみつけろ!】
【コピペで動く!】20行で資産運用モデル作成 Google ColabのPythonで 米国株の株価を取得し、グラフ・チャートを表示
【コピペで動く!】Google ColabでPython を用いての 効率的フロンティア と ポートフォリオの最適化 Efficient Frontier & Portfolio Optimization with Python [Part 2/2]
過去50年間のS&P500の季節性の値動きから負けにくいポジション構築はできるのか考える・大統領選挙のアノマリー対応!【コピペで動く!】Google ColabのPythonで自分で調べてみよう!
曜日による米国株指数(S&P500)のパフォーマンスに違いはあるのか?有利なポジション取りはできるのか?【Google ColabのPython:コピペで動く!】Twitterで出てくる知見は本当か自分で調べてみよう。
エクセルでサブスクタイプの契約管理!契約期間を塗りつぶして可視化したり、月次契約金額の集計で予実管理!
【解決】スクレイピングでHTTP Error 403: Forbiddenでアクセスできないときに試すべき方法【コピペで動く!】【Google Colab:Python:pd.read_html,selenium】
【解決】Google ColabのPythonでエクセル(Excel)ファイルやCSVファイルに出力・入力する方法【コピペで動く!】
米国債のゼロクーポン債STRIPSについてのメモ
【コピペで動く!】IB証券(インタラクティブ・ブローカーズ証券 )へのPythonでのAPI接続 ib_insync [自分が使っているPythonコード]
【コピペで動く!】レイ・ダリオ推奨「オール・ウェザー戦略」をETFで構築するには? ETFの手軽さとそのパフォーマンスの高さとは!【違いをみつけろ!】
米国株のティッカー(Symbol)のスクレイピングによる取得、APIによるヒストリカルデータやファンダメンタルズデータ取得について【コピペで動く!】Python,Quandl,無料枠あり
自動化・効率化でなにができるのか!Google FinanceやYahoo Financeからデータ取得して年初来パフォーマンスや週次騰落率のファクターチェック

コメント