ipcall.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. from selenium import webdriver
  2. from selenium.webdriver.chrome.options import Options
  3. class searchinfo(object):
  4. def __init__(self):
  5. self.token1 = None
  6. def start(self,ip):
  7. self.token1=self.login(ip)
  8. return self.token1
  9. def login(self,ip):
  10. try:
  11. #return "test" + str(datetime.datetime.now())
  12. chrome_options = Options()
  13. chrome_options.add_argument("--headless")
  14. chrome_options.add_experimental_option("detach",True)
  15. chrome_options.add_argument("window-size=1920x1080")
  16. chrome_options.add_argument("--start-maximized")
  17. chrome_options.add_argument('--disable-gpu') # 如果不加这个选项,有时定位会出现问题
  18. browser = webdriver.Chrome(
  19. executable_path=r'D:\flightinfo\Google\Chrome\Application\chromedriver.exe',
  20. options=chrome_options)
  21. browser.set_window_size(width=2000,height=300)
  22. browser.get("http://%s/"%ip)
  23. browser.find_element_by_id("username").send_keys("adminadmin")
  24. browser.find_element_by_id("password").send_keys("adminadmin")
  25. browser.find_element_by_id("logonButton").click()
  26. # print(browser.get_cookies())
  27. for cookie in browser.get_cookies():
  28. #print(str(browser.get_cookies()))
  29. if "keepOnLine" not in str(browser.get_cookies()):
  30. browser.get("http://%s/" % ip)
  31. browser.switch_to.frame("title_top")
  32. browser.find_element_by_id("enableSessionTimeout").click()
  33. if "keepOnLine" in cookie.values() and cookie["value"] == "false":
  34. browser.get("http://%s/" % ip)
  35. browser.switch_to.frame("title_top")
  36. browser.find_element_by_id("enableSessionTimeout").click()
  37. for cookie in browser.get_cookies():
  38. #print(str(browser.get_cookies()))
  39. if "auth" in cookie.values():
  40. return "auth=" + cookie["value"] + ";CUR_LANG=cn;" + "CTCPgSz=10;" + "keepOnLine=true"
  41. else:
  42. return "fail"
  43. except Exception:
  44. return "fail"
  45. #print(str(browser.get_cookies()))
  46. if __name__ == '__main__':
  47. fl = searchinfo()