selenium 基本函数

#代码分层
#coding=utf-8
import  time
import  os
from time import sleep,ctime
from selenium.webdriver.common.action_chains import ActionChains

from selenium.webdriver.common.keys import Keys

from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import  expected_conditions as EC




'''import  unittest


class math(unittest.TestCase):
    @classmethod

    def add(a,b):
        return a+b
    def test_add(self):
     # self.assertEqual(2,add(2,4))
    @unittest.skip("i am moyamie")

    def test_mius(a,b):
        return a-b

if __name__=='__main__':
    suite=unittest.TestCase()
    tests=[]
'''
from selenium import webdriver
driver=webdriver.Firefox()
driver.get("http://www.baidu.com")
#参数数字为像素点
driver.set_window_size(480,800)
# 全屏显示
driver.maximize_window()
# 前进按钮
driver.forward()
#
driver.find_element_by_link_text('新闻').click()
#
print(driver.current_url)
# 后退
driver.back()
# 打印当前页面
print(driver.current_url)

driver.find_element_by_id('ininput').clear()
driver.find_element_by_id('ininput').send_keys(12456)
#返回元素尺寸
driver.find_element_by_id('kw').size()
#获取元素文本
driver.find_element_by_id('kw').text()
#获取属性值
driver.find_element_by_id('kw').get_attribute('type')
# 设置该元素是否用户可见
driver.find_element_by_id('kw').is_displayed()

# 定位到要右击的元素
rightClick=driver.find_element_by_id('xx')
# 对定位到的元素执行鼠标右建操作
ActionChains(driver).context_click(rightClick).perform()
# 拖放
#定位元素的原位置
elemet=driver.find_element_by_name("xxx")
#定位元素移到的位置
target=driver.find_element_by_name('xxx')
# 执行元素拖放操作

ActionChains(driver).drag_and_drop(elemet.target).perform()

#键盘操作
driver.find_element_by_id('kw').send_keys('selenium')
driver.find_element_by_id('su').click()
# 删除
driver.find_element_by_id('kw').send_keys(Keys.BACK_SPACE)
# 输入空格建+教程
driver.find_element_by_id('kw').send_keys(Keys.SPACE).send_keys(u'教程')
# ctrl+a
driver.find_element_by_id('kd').send_keys(Keys.CONTROL,'A')
#回车
driver.find_element_by_id('kw').send_keys(Keys.ENTER)
# 按钮
driver.find_element_by_id('login').submit()
user=driver.find_element_by_id('spnUid').text
# 预期结果判断
if user=='moyamei@126.com':
    print('login success!')
else:
    print('login error!')


#driver.find_element_by_xpath('//*[@id='kw']')
driver.find_elements_by_css_selector(".#kw")
time.sleep()
driver.quit()
# 显示等待
elment2=WebDriverWait(driver,5,0,0.5).until(
    EC.presence_of_located(By.ID,'kw')
)
 '''
 for  i in range(1,5):
     el=driver.find_element_by_id().is_displayed()
     if el=='True':
         el.click()
     else:
         time.sleep(0.5)'''

#隐视等待
driver.implicitly_wait(10)# 秒

print(ctime())
'''
try:
    print('check')
except Exception,e:
    raise e
finally:
    print(ctime())
'''
#checkbox
file_path='/'+os.path.abspath(test.html)
# 选择页面上所有的tag name 为input 的元素
input=driver.find_element_by_tag_name('input')
#通过Xpath 找到type=checkbox的元素

checkboxs=driver.find_element_by_xpath("//input[@type='checkbox']")
# 最后一个
checkboxs=driver.find_elements_by_css_selector('input[type=checkbox]').pop().click()
# 然后从中过滤出type 为checkbox 的元素,单击勾选
for i in input:
    if i.get_attribute('type')=='checkbox':
        i.click()
        time.sleep(1)
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值