# python anti_private_IP_ubuntu.py # make sure chromedriver.exe is the same version as the currently installed chrome # ZTE F609 Modem from selenium import webdriver from selenium.webdriver.support.ui import WebDriverWait import time from selenium.webdriver.chrome.options import Options from datetime import datetime import os ipAdrress = "http://192.168.1.1" uName = "" #default ZTE Indihome username uPassword = "" #default ZTE Indihome password def restart(): browser.get(ipAdrress) username = browser.find_element_by_id("Frm_Username") password = browser.find_element_by_id("Frm_Password") submit = browser.find_element_by_id("LoginId") username.send_keys(uName) password.send_keys(uPassword) submit.click() #browser.get("http://192.168.1.1/getpage.gch?pid=1002&nextpage=manager_dev_conf_t.gch") browser.get(ipAdrress + "/getpage.gch?pid=1002&nextpage=manager_dev_conf_t.gch") reboot = browser.find_element_by_id("Submit1") reboot.click() reboot_confirm = browser.find_element_by_id("msgconfirmb") reboot_confirm.click() print("Modem ter-restart pada " + str(now)) def checkIP(): browser.get(ipAdrress) username = browser.find_element_by_id("Frm_Username") password = browser.find_element_by_id("Frm_Password") submit = browser.find_element_by_id("LoginId") username.send_keys(uName) password.send_keys(uPassword) submit.click() browser.get(ipAdrress + "/getpage.gch?pid=1002&nextpage=IPv46_status_wan2_if_t.gch") IP_WAN = browser.find_element_by_id("TextPPPIPAddress0").get_attribute('value') print(IP_WAN) depan = IP_WAN.split(".") print(depan[0]) if depan[0] == "10": print("Private IP") restart() else: print("Not private IP, skipping") while True: # Headless mode to save RAM and GPU usage now = datetime.now() options = Options() options.add_argument('--headless') options.add_argument('--disable-gpu') options.BinaryLocation = "/usr/bin/chromium-browser" try: browser = webdriver.Chrome(executable_path="/usr/bin/chromedriver", chrome_options=options) checkIP() browser.quit() except: print("Error, coba lagi") os.system("killall chromium-browser") print("Sleep for 1 hour") time.sleep(1*3600)