Добрый день.
Сделал скрипт для настройки камер.
Настройки могут отличаться, в зависимости от класса камер.
Требуется чтобы в начале скрипта я указывал класс камеры и исходя из этого в настройках подставлялись нужные значений. Например, если класс 1, то битрейт 4000, если класс 2, то битрейт 2000, в примере я менял ip адрес ntp сервера.
Так как я только начинаю учить python, не придумал ничего умнее, чем засунуть весь все тело настроек в инструкцию после условия.
Работает, но получилось очень громоздко. Буду благодарен, если подскажете более элегантное решение.
from selenium import webdriver
import time
ip = input('Введите ip')
ip = (f'http://{ip}')
type = input('Введите тип камеры')
type=int(type)
if type < 3:
browser=webdriver.Firefox()
browser.get(f'http://{ip}')
textarea=browser.find_element_by_css_selector('#username')
textarea.send_keys('admin')
textarea=browser.find_element_by_css_selector('#password')
textarea.send_keys('password')
submit=browser.find_element_by_css_selector('.btn')
submit.click()
time.sleep(5)
if type < 3:
browser=webdriver.Firefox()
browser.get(f'http://{ip}')
textarea=browser.find_element_by_css_selector('#username')
textarea.send_keys('admin')
textarea=browser.find_element_by_css_selector('#password')
textarea.send_keys('password')
submit=browser.find_element_by_css_selector('.btn')
submit.click()
time.sleep(5)
set=browser.find_element_by_css_selector('CSS-селектор')
set.click()
time.sleep(5)
system=browser.find_element_by_css_selector('CSS-селектор')
system.click()
ntp=browser.find_element_by_css_selector('CSS-селектор')
ntp.click()
time.sleep(2)
ntpip=browser.find_element_by_css_selector('CSS-селектор')
ntpip.click()
ntpip.clear()
ntpip.send_keys('10.0.0.1')
ntpport=browser.find_element_by_css_selector('CSS-селектор')
ntpport.click()
ntpport.clear()
ntpport.send_keys('1')
ntpinterval=browser.find_element_by_css_selector('CSS-селектор')
ntpinterval.click()
ntpinterval.clear()
ntpinterval.send_keys('60')
ntpsave=browser.find_element_by_css_selector('CSS-селектор')
ntpsave.click()
elif type == 3:
browser=webdriver.Firefox()
browser.get(f'http://{ip}')
textarea=browser.find_element_by_css_selector('#username')
textarea.send_keys('admin')
textarea=browser.find_element_by_css_selector('#password')
textarea.send_keys('password')
submit=browser.find_element_by_css_selector('.btn')
submit.click()
time.sleep(5)
set=browser.find_element_by_css_selector('CSS-селектор')
set.click()
time.sleep(5)
system=browser.find_element_by_css_selector('CSS-селектор')
system.click()
ntp=browser.find_element_by_css_selector('CSS-селектор')
ntp.click()
time.sleep(2)
ntpip=browser.find_element_by_css_selector('CSS-селектор')
ntpip.click()
ntpip.clear()
ntpip.send_keys('10.0.0.2')
ntpport=browser.find_element_by_css_selector('CSS-селектор')
ntpport.click()
ntpport.clear()
ntpport.send_keys('1')
ntpinterval=browser.find_element_by_css_selector('CSS-селектор')
ntpinterval.click()
ntpinterval.clear()
ntpinterval.send_keys('90')
ntpsave=browser.find_element_by_css_selector('CSS-селектор')
ntpsave.click()
else
browser=webdriver.Firefox()
browser.get(f'http://{ip}')
textarea=browser.find_element_by_css_selector('#username')
textarea.send_keys('admin')
textarea=browser.find_element_by_css_selector('#password')
textarea.send_keys('password')
submit=browser.find_element_by_css_selector('.btn')
submit.click()
time.sleep(5)
set=browser.find_element_by_css_selector('CSS-селектор')
set.click()
time.sleep(5)
system=browser.find_element_by_css_selector('CSS-селектор')
system.click()
ntp=browser.find_element_by_css_selector('CSS-селектор')
ntp.click()
time.sleep(2)
ntpip=browser.find_element_by_css_selector('CSS-селектор')
ntpip.click()
ntpip.clear()
ntpip.send_keys('10.0.0.3')
ntpport=browser.find_element_by_css_selector('CSS-селектор')
ntpport.click()
ntpport.clear()
ntpport.send_keys('1')
ntpinterval=browser.find_element_by_css_selector('CSS-селектор')
ntpinterval.click()
ntpinterval.clear()
ntpinterval.send_keys('120')
ntpsave=browser.find_element_by_css_selector('CSS-селектор')
ntpsave.click()