【NCP-HG100】定期的に再起動させる

  • 投稿 : 2022-03-03
Windows10
Python 3.10.2
selenium-4.1.2
で動作確認しました

ブラウザからアクセスできる管理画面から、再起動させることが可能です。これをPython を使って、定期的に自動で動作させることにします。

事前準備

・Pythonのインストール
・seleniumの導入
・ChromeDriver の導入

pip install selenium

ChromeDriver - WebDriver for Chrome - Downloads

再起動スクリプト

import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.chrome.service import Service
from subprocess import CREATE_NO_WINDOW
from selenium.webdriver.common.by import By

userId="admin"
password="passwd1234567890"

options = Options()
options.add_argument('--headless')

service  = Service(executable_path='C:\\etc\\webdriver\\ChromeDriver_98.0.4758.102\\chromedriver.exe')
service.creationflags = CREATE_NO_WINDOW

driver = webdriver.Chrome(service=service , options=options)
driver.implicitly_wait(20)

#-------------
#ログイン画面
#-------------
driver.get('http://192.168.132.1/')

element = driver.find_element(By.NAME,'luci_username')
element.clear()
element.send_keys(userId)

element = driver.find_element(By.NAME,'luci_password')
element.clear()
element.send_keys(password)

time.sleep(5)

selector = '#maincontent > form'
element = driver.find_element(By.CSS_SELECTOR,selector)
element.submit()

time.sleep(5)
#-------------
#再起動画面
#-------------
selector = 'ul.nav > li:nth-child(2)'
element = driver.find_element(By.CSS_SELECTOR,selector)
element.click()

selector = 'ul.nav > li:nth-child(2) > ul > li:nth-child(4) > a'
element = driver.find_element(By.CSS_SELECTOR,selector)
element.click()
time.sleep(5)

selector = 'button.cbi-button'
element = driver.find_element(By.CSS_SELECTOR,selector)
element.click()
time.sleep(30)

driver.close()
driver.quit()

補足 その1

service  = Service(executable_path='C:\\etc\\webdriver\\ChromeDriver_98.0.4758.102\\chromedriver.exe')

executable_pathの部分は、「chromedriver.exe」を実際に配置したパスに置き換えてください。

補足 その2

password="passwd1234567890"

パスワードの部分は、NCP-HG100の管理画面のパスワードに書き換えてください。

補足 その3

options.add_argument('--headless')

の部分は、

動作を確認する時に、ブラウザが非表示だと確認しにくいので
以下の部分を、#を付けてコメント化してください。そうすると、ブラウザ表示で動作確認できます

#options.add_argument('--headless')

タスクスケジューラに登録

タスクの作成タスクスケジューラを立ち上げて、タスクの作成から作成します。「基本タスクの作成」のほうを選ぶとウイザード形式で作成ができます。トリガー =>実行のタイミ

某氏の猫空

上記記事に従って登録してください。

動画での説明

スポンサーリンク