1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

SeleniumでSBI証券の重要なお知らせを自動で確認する

Posted at

やりたいこと

新NISAのタイミングでSBI証券を使い始めようと思ったら重要なお知らせが150件ほどたまっていた。見た感じまとめて確認にするUIもなかったので仕方なく自動化することにした。
※この方法によって重要なお知らせを見落としたことによる損害などについては一切責任を負えません。

前提条件

  • ChromeDriver
  • Python
  • Selenium
    の実行環境がある

ソースコード(一部ChatGPTで生成)

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
import time

# WebDriverのパスを指定して、ブラウザを開きます(例:Chromeを使用する場合)
driver = webdriver.Chrome()

# ログインページに移動
driver.get('https://sp.sbisec.co.jp/login')

# ログイン処理(自分のユーザー名とパスワードを設定)
username = driver.find_element(By.NAME, 'username')
password = driver.find_element(By.NAME, 'originPassword')
username.send_keys('username')
password.send_keys('password')
password.send_keys(Keys.ENTER)
# 以下負荷を考えて適当にスリープをいれてます
time.sleep(1)

notice_icon = driver.find_element(By.CLASS_NAME, 'icon-tooltip')
notice_icon.click()
time.sleep(1)
href_link = driver.find_element(By.LINK_TEXT, '重要なお知らせ一覧はこちら')
href_link.click()

#重要なお知らせ一覧
driver.switch_to.window(driver.window_handles[1])
time.sleep(1)

# 事前に確認したお知らせ分くりかえす
for i in range(100): 
    #ページ内のリンクを全て洗い出す ※リンクを毎回取り直さないとSeleniumがエラーを吐くのでこのような繰り返し処理にしています
    all_links = driver.find_elements(By.XPATH, "//a[@href]") 
    important_link = ''
    for l in all_links:
        #おしらせようのリンクだけ取り出す
        if 'viewInfo' in  str(l.get_attribute('href')):
            important_link = l
            print(important_link)
            break
    if important_link == '':
        break
    important_link.click()
    time.sleep(1)
    #確認ボタンを押して 閉じる
    confirm_btn = driver.find_element(By.NAME, 'ACT_estimate')
    confirm_btn.click()
    close_btn = driver.find_element(By.NAME, 'ACT_backViewInfoList')
    time.sleep(1)
    close_btn.click()
    time.sleep(1)

# タブを閉じる
driver.close()
# ブラウザを終了
driver.quit()

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?