卡片新增

卡片新增自动化脚本设计到:放大镜,下拉框,日期框,文本框,页面下拉到底部,上传文件等的取元数据,iframe存在很多个的时候定义def方法,其中iframe的值:360浏览器和火狐浏览器各不相同

#导入驱动的包和控制时间的包
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.webdriver.common.by import By
import time


#卡片新增自动化脚本设计到的点:放大镜,下拉框,日期框,文本框,页面下拉到底部,上传文件等

#获取动态的frame
def iframe0():
    time.sleep(2)
    iframe0 = driver.find_elements_by_tag_name("iframe")
    r0 = iframe0[0].get_attribute('id')
    print('动态frame0:%s'%r0)
    driver.switch_to.frame(r0)

def iframe1():
    time.sleep(2)
    iframe1 = driver.find_elements_by_tag_name("iframe")
    r1 = iframe1[1].get_attribute('id')
    print('动态frame1:%s'%r1)
    driver.switch_to.frame(r1)

#初始化驱动
driver=webdriver.Firefox()

#设置要打开的网页链接
url='自己的网址'

#打开盛祺登录页面
driver.get(url)

#浏览器最大化
driver.maximize_window()

#等待页面加载完成
time.sleep(3)

#点击账号输入框
driver.find_element_by_id('showAccount').click() 
#输入账号
driver.find_element_by_id('userAccount').send_keys(u'ctt') 
#点击密码输入框
driver.find_element_by_id('showPassword').click() 
#输入密码
driver.find_element_by_id('userPassword').send_keys(u'123456') 
#点击登录按钮 
driver.find_element_by_id('dengluBtn').click()

time.sleep(5)

#通过frame方式定位
driver.switch_to.frame("id_iframe")

#点击资产账
driver.find_element_by_xpath('/html/body/div[4]/div[1]/div[2]/div[3]/ul/li[2]/div/div[2]/span').click()

time.sleep(1)

#点击固定资产管理
driver.find_element_by_xpath('/html/body/div[4]/div[1]/div[2]/div[3]/ul/li[2]/ul/li[1]/div/div[2]').click()

time.sleep(1)

#点击卡片登记
driver.find_element_by_xpath('/html/body/div[4]/div[1]/div[2]/div[3]/ul/li[2]/ul/li[1]/ul/li[1]/div/div[2]').click()

time.sleep(1)

#退出frame方式定位
driver.switch_to.default_content()

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")

#点击新增
driver.find_element_by_xpath('/html/body/div[2]/div[1]/button[1]').click()


#退出两层frame方式定位
driver.switch_to.default_content()
#退出两层frame方式定位
driver.switch_to.default_content()

time.sleep(3)

#获取动态的frame
iframe1()

time.sleep(1)

#点击"其他"类型卡片 
driver.find_element_by_xpath('/html/body/div/div[5]').click()

time.sleep(1)

#退出动态frame方式定位
driver.switch_to.default_content()

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame
iframe0()

time.sleep(2)

#点击'使用部门'放大镜
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[1]/td[4]/span/span/span').click()

#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

time.sleep(2)

#选择部门‘教务处’
driver.find_element_by_xpath('/html/body/div[6]/div[2]/div/div[3]/div[1]/ul/li/ul/li[8]/a/span[2]').click()

time.sleep(2)

#点击:确定  按键
driver.find_element_by_xpath('/html/body/div[6]/div[2]/div/div[4]/button[1]').click()

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame
iframe0()

time.sleep(2)

#点击'教育分类代码'放大镜
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[2]/td[2]/span/span/span').click()

#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

time.sleep(2)

#选择资产类别“图书”
driver.find_element_by_xpath('/html/body/div[6]/div[2]/div/div[3]/div[1]/ul/li/ul/li[11]/a/span[2]').click()

time.sleep(1)

#点击:确定  按键
driver.find_element_by_xpath('/html/body/div[6]/div[2]/div/div[4]/button[1]').click()

time.sleep(1)

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame
iframe0()

time.sleep(2)

#点击'资产分类代码'放大镜
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[2]/td[4]/span/span/span').click()

#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

time.sleep(2)

#点击'其他图书,档案'放大镜
driver.find_element_by_id('tsid_div_tree_12_span').click()

time.sleep(1)

#点击:确定  按键
driver.find_element_by_xpath('/html/body/div[6]/div[2]/div/div[4]/button[1]').click()

time.sleep(1)

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe0()

time.sleep(2)

#点击:点击:资产名称 输入框
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[3]/td[2]/input').click()
#输入资产名称:c资产
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[3]/td[2]/input').send_keys(u'c资产')

time.sleep(2)

#*********************************************日期控件**************************************
time.sleep(2)

#点击:取得日期 日期框
driver.find_element_by_css_selector('#EditPanel > div > div > table > tbody > tr:nth-child(4) > td:nth-child(2) > span > span > span').click()
time.sleep(2)
#点击:今天  选项
driver.find_element_by_xpath('/html/body/div[12]/div/div[2]/a[1]').click()

#*********************************************日期控件**************************************

#点击:点击:型号 输入框  
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[11]/td[4]/input').click()
#输入型号:88*88
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[11]/td[4]/input').send_keys(u'88*88')

time.sleep(2)

#点击:点击:原值 输入框  
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[7]/td[2]/input[1]').clear()

#输入原值:888
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[1]/div/div[1]/div/div/table/tbody/tr[7]/td[2]/input[1]').send_keys(u'888')

time.sleep(2)

#点击:经费来源 下拉框
driver.find_element_by_css_selector('#EditPanel > div > div > table > tbody > tr:nth-child(9) > td:nth-child(2) > span > span > span').click()
time.sleep(2)
#点击:创新强校 选项
driver.find_element_by_xpath('//div[text()="创新强校"]').click()

time.sleep(2)

#10000足够大,代表拖到底部。值设为0代表顶部
js="var q=document.documentElement.scrollTop=10000"
driver.execute_script(js)

time.sleep(2)

#*********************************************下拉框**************************************

#点击:行业资产用途 下拉框
driver.find_element_by_css_selector('#EditPanel > div > div > table > tbody > tr:nth-child(17) > td:nth-child(2) > span > span > span').click()
time.sleep(2)
#点击:(行业)科研 选项 
driver.find_element_by_xpath('//div[text()="(行业)科研"]').click()

#*********************************************下拉框**************************************



#点击:资产附件
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div[3]/ul/li[2]/a/span[1]').click()

time.sleep(2)

#点击:新增
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[2]/div/div/div/div[1]/div/button[1]').click()


#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe1()

#点击:选择文件
driver.find_element_by_xpath('/html/body/div[1]/table/tbody/tr[2]/td[2]/form/input').send_keys('C:\\Users\\Admin\\Desktop\\控制台输出.sql')

time.sleep(2)

#点击文件框:保存  
driver.find_element_by_xpath('/html/body/div[2]/button[1]').click()

#退出frame方式定位
driver.switch_to.default_content()

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe0()

#点击:资金来源
driver.find_element_by_xpath('/html/body/div[2]/div[1]/div[3]/ul/li[6]/a/span[1]').click()

time.sleep(2)

#点击:添加
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[6]/div/div/div[3]/div[1]/button[1]').click()
time.sleep(2)

#点击:项目编号放大镜
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[6]/div/div/div[3]/div[2]/form/div/div/div/div[2]/div[2]/table/tbody/tr/td[3]/div/table/tbody/tr/td/span/span/span').click()
time.sleep(2)
#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe1()

#选择行号:1 的经费
driver.find_element_by_xpath('/html/body/div[2]/div/div/div[2]/div[2]/div[2]/table/tbody/tr[1]/td[1]/div').click()
time.sleep(2)
#点击:确定  
driver.find_element_by_xpath('/html/body/div[3]/button[1]').click()
time.sleep(2)
#退出frame方式定位
driver.switch_to.default_content()

#通过两层frame方式定位
driver.switch_to.frame("id_iframe")
driver.switch_to.frame("J_iframe_M160103A")
#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe0()

time.sleep(2)
#使用金额输入值  
driver.find_element_by_xpath('/html/body/div[2]/div[2]/div[6]/div/div/div[3]/div[2]/form/div/div/div/div[2]/div[2]/table/tbody/tr/td[5]/div/table/tbody/tr/td/input[1]').send_keys('888')

#点击:保存  
driver.find_element_by_xpath('/html/body/div[3]/button[2]').click()

time.sleep(2)

#退出frame方式定位
driver.switch_to.default_content()
driver.switch_to.default_content()
driver.switch_to.default_content()

#点击:确定 
driver.find_element_by_xpath('/html/body/div[7]/div[3]/a[1]').click()

time.sleep(2)

#通过两层frame方式定位
#获取动态的frame(好像区分360浏览器和火狐浏览器)
iframe1()

#点击:返回 
driver.find_element_by_xpath('/html/body/div/div[3]/input[3]').click()

#退出frame方式定位
driver.switch_to.default_content()

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值