import os,time
from selenium import webdriver
url = "http://192.168.1.1"
brower = webdriver.Chrome()
brower.get(url)
# brower.find_element_by_link_text("请登陆").click()
#自动全搜到请登陆那三个字,点提交
#brower.find_element_by_partial_link_text("请").click()
#只要有一个请字匹配到就点他提交
#brower.find_element_by_name("usersubmit").click()
#按name值提交
# 如果没有把werdirver加入环境变更就要写绝对路径指定了
# path = '/Users/chengf/Documents/Python/Project/selenium_chrome/chromedriver'
# brower = webdriver.Chrome(executable_path=path)
#brower.find_element_by_id("ID").send_keys("newname")
#搜到ID名那个填空自动填进去newname
# brower.find_element_by_name("username").send_keys("yeng")
# brower.find_element_by_name("userpassword").send_keys("admin")
# time.sleep(2)
# brower.find_element_by_name("usersubmit").click()
# brower.find_element_by_link_text("返回首页").click()
# brower.find_element_by_link_text("注销").click()
#搜到name名那个值,填空自动填进去newname
#brower.find_element_by_class_name("class=").send_keys("newname")
#搜到calss名那个填空自动填进去newname
#-------------------------------------------------------------------------
# xpath常用六种方法(click和send_keys("输入内容")这两个值是通用的都能用):
#click 点击操作必须是按键、链接、单选框、复选框
#send_keys 输入内容、输入框、多行文本等
#brower.find_element_by_xpath("//input[@name='usernam']").submit()
#submit提交表单另一种用法,要求对象必须是表单
#brower.find_element_by_xpath("//input[@name='usernam']").clear()
#clear清除对象内容
# 1、绝对路径
# 2、相对路径
# 3、元素索引
# 4、元素属性
# 5、元素属性值
# 6、元素文本
#绝对路径
#brower.find_element_by_xpath("/html/body/a").click()
#如果有多个a标签的话,就用a[n]去设置第几个a,从1开始
#相对路径
#brower.find_element_by_xpath("//a").click()
# brower.find_element_by_xpath("//body/a")
#brower.find_element_by_xpath("//form/div[3]").click()
# 先从小到大依次用相对路径去试
# 根据元素属性值匹配
#brower.find_element_by_xpath("//input[@name='usernam' and @id='username']").send_keys("User")
#brower.find_element_by_xpath("//input[@type='password' and @id='logincode']").send_keys("2Lfua9s%")
# 可以加or 或and 进行多项叠加匹配
# brower.find_element_by_xpath("//input[@name='usernam' and @class='myclass']")
# size = brower.find_element(By.ID,"my").size
# 获取元素的尺寸大小,类型为字典类型,例如图片
# size = brower.find_element(By.name,"my").text
# 获取元素的文本
# size = brower.find_element(By.name,"my").get_attribute('href')
# 获取元素的属性值
# size = brower.find_element(By.name,"my").tag_name
# 获取元素的标签名
# size = brower.find_element(By.name,"my").location
# 获取元素的坐标位置
# size = brower.find_element(By.name,"my").screenshot("1.png")
# 对元素截图
#----------------------------------------------------------------------------
# web下拉框里面的元素获取2种方法:
# 1、通过上面传统的元素定位
# 2、创建一个select对象(要先导入这个方法),再用方法获取
# from selenium.webdriver.suppor.select import Select
# e = driver.find_element_by_xpath("//select[@id="Select"]")
# select_obj = Select(e)
# select_obj.select_by_visible_text("提交")
# 或都用索引
# select_obj.select_by_index(0)
# 或者用value
# select_obj.select_by_value("提交")
#----------------------------------------------------------------------------
# 对弹框进行处理
# brower.find_element_by_xpath("//input[@name='usernam' and @class='myclass']").click()
# brower.switch_to.alert.accept() 点击弹出的框确定按钮
# brower.switch_to.alert.dismiss() 点击弹出框的取消按钮
# result = brower.switch_to.alert.text 获取弹出框上面的文本信息
# 弹框内输入的内容
# brower.find_element_by_xpath("//input[@name='usernam' and @class='myclass']").click()
# brower.switch_to.alert.send_keys("弹框内输入的内容")
# brower.switch_to.alert.accept() 输入完后提交
#----------------------------------------------------------------------------
# 执行js脚本:
# webdriver遇到无法完成的操作时候,用javascript来完成,webdriver提供了execte_script方法
# 来调用js代码进行执行。
# 执行js两种场景:一种是在页面上直接执行,另一种是在已定位的元素上执行js
# 常用js脚本方法:
# js1 = 'alert("hello");' 弹出框
# js2 = 'document.body.scrollTop=10000;' 浏览器下拉操作
# js3 = 'arguments[0].style.border="4px solid red";' 对原有的元素加以修饰
# js4 = 'arguments[1].scroLLIntoView();' 滚动到指定元素
# js5 = 'arguments[1].removeAttribute("value");' 移取元素属性
# js6 = 'arguments[1].setAttribute("value","newdream");'改元素属性
# 元素上执行js脚本
# a = brower.find_element(By.XPATH, "//input[@name='usernam']")
# js7 = 'arguments[0].removeAttribute("value")';
# brower.execute_script(js7)
登錄信管網案例:
url=“https://www.cnitpm.com/login.aspx”
brower = webdriver.Chrome()
brower.get(url)
brower.find_element_by_name(“UserName”).send_keys(“13345673434”)
brower.find_element_by_name(“Password”).send_keys(“admin”)
time.sleep(5)
brower.find_element_by_id(“user_protocol1”).click()
#自動協議同意打勾
brower.find_element_by_id(“btnLogin”).click()
#登錄