Python入門トップページ


目次

  1. テストの自動化と Selenium
  2. Selenium のインストール
  3. ChromeDrive - WebDriver for Chrome のダウンロードと設置
  4. Web ページを開いてみよう
  5. リンクをクリックしてみる
  6. 要素の情報を取り出す
  7. すべての要素を取り出してみよう
  8. リンクを開いて戻ってみる
  9. リンクを巡回しながら情報を取得する(1)
  10. リンクを巡回しながら情報を取得する(2)
  11. リンクを巡回しながら情報を取得する(3)
  12. 要素の見つけ方

Selenium を使って Web からデータを自動収集しよう

リンクを巡回しながら情報を取得する(2)

前のページでは,複数のURLを格納した辞書を生成できたので,ここではこの辞書を参照しながら,ページを巡回します.具体的には,27行目からの for ループによって,courses 辞書に格納されたURLを巡回します.

 辞書に格納されたリンクを巡回する (manager-selenium07.py)
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.common.by import By
import time       # 時間を操作するPythonの標準モジュール

# 操作するブラウザを開く
chrome_service=Service(ChromeDriverManager().install())
driver = webdriver.Chrome(service=chrome_service)
# driver = webdriver.Chrome('C:\\Users\\bk182005\\Documents\\selenium\\chromedriver.exe') # 手動インストールを使う場合

# 操作するページを開く
driver.get('https://kobegakuin-biz.jp/course/')

# 3秒待つ
time.sleep(3)

# 空の辞書を準備
courses = {}

# class="box" の要素をすべて検索する
elms = driver.find_elements(By.CLASS_NAME, 'box')
for elm in elms:
  course_title = elm.find_element(By.TAG_NAME, 'h3').text
  url = elm.find_element(By.TAG_NAME, 'a').get_attribute('href')
  # 辞書に追加
  courses[course_title] = url

# 辞書の内容を表示
# print(courses)

# 辞書に格納されたURLを巡回する
for course, url in courses.items():
  print('---------')
  print(course)
  print(url)
  driver.get(url)
  time.sleep(3)

# 3秒待つ
# time.sleep(3)

# ブラウザを閉じる
driver.close()
(base) C:\Users\bk182005\Documents\python>python manager-selenium07.py ⏎

DevTools listening on ws://127.0.0.1:60277/devtools/browser/f7cc8fc4-f64c-46c7-a7f3-9d0d5a88c45f
---------
経営・商学コース
https://kobegakuin-biz.jp/course/business.html
---------
会計コース
https://kobegakuin-biz.jp/course/accounting.html
---------
経営情報科学コース
https://kobegakuin-biz.jp/course/solution.html
---------
専門語学・海外研修
https://kobegakuin-biz.jp/course/global.html
---------
スポーツサイエンスユニット
http://www.ge.kobegakuin.ac.jp/~kyotsu/feature/sports/index.html

(base) C:\Users\bk182005\Documents\python>

次のページでは,巡回先のページから各コースの主な講義名を取得してみよう.

目次に戻る