さようならすらまともに打てなくなりました。
黒歴史は消えないわ。私が守るもの(やめて)
はじめに
はてなブログは無料で3つまでブログを開設でき、プロになると10個まで開設できます。さて、今はプロだけど、後で解約するかもしれませんね。
コレに備えてブログを削除するとそのURLがつかえなくなってしまいます。URLはとっておきたいがブログはもう不要である。
そんなとき、記事をすべて削除するプログラムです。
削除して使えなくなったURL:
https://elve.hatenablog.com/
!!!必ず事前に記事をバックアップ(エクスポート)しておきましょう
結果
削除してからご案内記事一つ書きました
elveさん抜きで話進めてくれ、意味がわからん
ダメシ添加大戦
ソース
Python3.7.12が動く環境です。
Seleniumを入れましょう
pip install selenium
あとなんかドライバー入れる
pip install webdriver_manager
# Use Webdriver Manager for Python: https://github.com/SergeyPirogov/webdriver_manager # Import code: from selenium import webdriver from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service from time import sleep import re from selenium.webdriver.common.alert import Alert URL = 'http://elve.hateblo.jp/'#削除するURL ID = 'elve'#はてなID ##### 後で消す##### PASS = '*********'#パスワード # Use the `install()` method to set `executabe_path` in a new `Service` instance: service = Service(executable_path=ChromeDriverManager().install()) # Pass in the `Service` instance with the `service` keyword: driver = webdriver.Chrome(service=service) # ログイン画面 driver.get("https://www.hatena.ne.jp/login") sleep(0.5) hatena_id = driver.find_element_by_id('login-name') hatena_pass = driver.find_element_by_name('password') hatena_id.send_keys(ID) sleep(1) hatena_pass.send_keys(PASS) sleep(1) loginbtn = driver.find_element_by_id('login-button') loginbtn.click() sleep(1) # 記事の管理 # 'https://blog.hatena.ne.jp/'+ID+URL+'/config' driver.get('https://blog.hatena.ne.jp/'+ID+'/' + re.sub('https*://', '', URL)+'entries') sleep(0.5) #次のページがある限りループ while True: #すべての記事にチェック allchkbox = driver.find_element_by_class_name('js-select-all-entries') if not allchkbox.is_selected(): allchkbox.click() #削除 dlbtn = driver.find_element_by_name('delete') dlbtn.click() #削除しますか→OK Alert(driver).accept() try: #次のページ取得 nt = driver.find_element_by_class_name('pager') nt.find_element_by_tag_name('button') #クリックしてすべてのチェックボックスリセット nt.click() sleep(0.8) allchkbox.click() sleep(0.2) except: break
なんか画面遷移によっては途中で止まるので繰り返し実行してください
参考
Selenium IDE - Chrome ウェブストア
【時短】ブラウザ自動操作ツール「Selenium」を使って面倒な操作を自動化しよう - お金と時間のトリセツ
Python+SeleniumWebDriverではwebdriver_managerを使うといちいちdriverのexeを置き換えなくて済む - Qiita
ペアーズの「いいね」返しを自動化したい秋だった - スナックelve 本店
python seleniumでチェックボックスにチェックする方法。
WebDriver
Interacting with web elements | Selenium
選択要素の操作 | Selenium
最初のSeleniumスクリプトを書く | Selenium
ブラウザーのドライバーをインストールする | Selenium
Seleniumライブラリのインストール | Selenium
accept dismiss-Python
Seleniumクイックリファレンス