fc2ブログ

ブログアクセスログをスクレイピングする(3)

 久々にブログのアクセスログを集計してみようと思い立ち(いつもの思いつき・・)、2年ほど前のブログを参考にプログラムを動かしてみました。結論から言うと、以前Pythonプログラムから操作できていたWebページがセキュリティ強化のためか?動かず・・。万事休すの備忘録です。

 このブログ記事はブラウザにFirefoxを使いましたが、今回はChromeを使いました。ChromeDriverはブラウザバージョンに対応したものをネットから取得し、以下のプログラムと同じフォルダ内に保存しました。
from selenium import webdriver
from selenium.webdriver.common.by import By
from bs4 import BeautifulSoup
import time
import csv

driver = webdriver.Chrome('./chromedriver')

username = "xxxxx@outlook.com"
password = "my password"

# Login Page
driver.get('https://fc2.com/ja/login.php?ref=blog')

login_username = driver.find_element(By.ID,"id")
login_username.clear()
login_username.send_keys(username)

login_password = driver.find_element(By.ID,"pass")
login_password.clear()
login_password.send_keys(password)

driver.find_element(By.CLASS_NAME, 'sh_login_ja').click() # Login button click
time.sleep(2)

login_password.submit()
time.sleep(3)
13行目を実行すると、Chromeがテストモードで立ち上がります。Chrome_auto_231126.pngその後、21行目まで実行すると、「メールアドレス/ブログID」と「パスワード」に必要事項が入力されました。Login_231126.png23行目の「ログイン」の画像ボタンを押すと、問題なければ管理画面にページが飛ぶのですが、「メールアドレス/ブログID」と「パスワード」のテキストボックスの入力内容がクリアされ、ログインできない結果でした。
 何度やっても結果は同じでした。また、ログインボタンを押す操作だけ、手動でやっても、管理画面にログインできませんでした。セキュリティが変わったのか、自動でログインできなくなったのかなと思いながらも、念のため、ブラウザをEdgeに変更して再トライしました。

 Edgeのdriver(Mac用のmsedgedriver)もネットから取得し、以下のプログラムと同じフォルダ内に保存しました。Edge_driver_231126.png
from selenium import webdriver
from selenium.webdriver.common.by import By
from bs4 import BeautifulSoup
import time
import csv

driver = webdriver.Edge('./msedgedriver')

username = "xxxxx@outlook.com"
password = "my password"

# Login Page
driver.get('https://fc2.com/ja/login.php?ref=blog')

login_username = driver.find_element(By.ID,"id")
login_username.clear()
login_username.send_keys(username)

login_password = driver.find_element(By.ID,"pass")
login_password.clear()
login_password.send_keys(password)

driver.find_element(By.CLASS_NAME, 'sh_login_ja').click() # Login button click
time.sleep(2)

login_password.submit()
time.sleep(3)
13行目を実行すると、Edgeがテストモードで立ち上がりました。Edge_auto_231126.png Chromeの場合と同様に、「メールアドレス/ブログID」と「パスワード」に必要事項が入力されましたが、結果は同じで、管理画面へログインできませんでした。手動でボタンを押しても同様でした。

 ブラウザを変えても同じ結果なので、ブラウザの問題ではなさそうです。手動でログインボタンを押してもNGなので、そもそもテストモードで管理画面にログインできないような仕様に変更になったのでしょう・・。以前は問題なく動いていたので・・。
 セキュリティ強化のために、自動でWebサイトを操作することが難しくなっていますね。個人的に利用するだけなのですが・・。頭を冷やして別の方法を検討しようと思います。
スポンサーサイト



コメント

非公開コメント

ご訪問者数

(Since 24 July, 2016)

タグクラウド


プロフィール

Dr.BobT

Author: Dr.BobT
興味のおもむくままに生涯考え続けるエンジニアでありたい。

月別アーカイブ

メールフォーム

名前:
メール:
件名:
本文: