微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

selenium的基本操作

<Meta charset="utf-8"/><Meta content="width=device-width initial-scale=1" name="viewport"/> selenium的基本操作 <body>

selenium的基本操作

常用类与方法

from selenium import webdriver   #驱动浏览器
from selenium.webdriver import ActionChains  #鼠标相关操作
from selenium.webdriver.common.by import By   #选择器,以什么方式选择标签元素
from selenium.webdriver,common.keys import Keys #键盘相关
from selenium.webdriver.support import expected_conditions as EC #各种判断,一般跟等待事件连用,比如说等待某个元素加载出来
from selenium.webdriver.support.wait import WeDriverWait  #等待事件,可以与EC连用

browser = webdriver.Chrome()
wait = webdriverwait(browser,10)
browser.get("https://www.baidu.com")  #利用谷歌浏览器打开百度窗口
browser.maximize_window()   #窗口最大化
print(browser.current_url)    #获取当前页url
print(browser.title)          #获取当前页面的title
print(browser.name)       #获取driver对象:chrome
print(browser.current_window_handle)    #获取当前页面窗口
print(browser.get_cookies())     #获取cookies
print(browser.page_source)       #获取当前页面内容
browser.refresh()           #刷新
browser.save_screenshot('a.png')    #保存截图
browser.close()              #关闭当前窗口
browser.quit()               #退出浏览器驱动,关闭关联窗口

选择器

from selenium import webdriver    #驱动浏览器
from selenium.webdriver.support.wait import webdriverwait   #等待事件
browser = webdriver.Chrome()     #选择为谷歌浏览器
browser.find_element_by_id('su')    #id选择器
browser.find_element_by_class_name('xx')   #类选择器,1个
browser.find_elements_by_class_name('xx')   #类选择器,多个
browser.find_element_by_link_text('xxx')    #连接文本选择器
browser.find_element_by_xpath('xxxx')       #xpath选择器
browser.find_element_by_tag_name('h1')    #标签选择器,获取1个
browser.find_elements_by_tag_name('h1')     #标签选择器,获取多个
browser.find_element_by_css_selector('xxx')  #样式选择器

另外,上面的选择器,都可以写成下面的形式

By.ID
By.LINK_TEXT
By.CLASS_NAME
By.XPATH
By.CSS_SELECTOR
By.TAG_NAME

通过选择器来实现

import time
from selenium import webdriver   #驱动浏览器
from selenium.webdriver import ActionChains   #鼠标的相关操作,比如滑动验证
from selenium.webdriver,common.keys import By   #选择器以什么方式选择标签元素
from selenium.webdriver.common,keys import Keys    #键盘相关
from selenium.webdriver.support import expect_conditions as EC  #各种判断等待时间连用,比如说等待某个元素加载出来
from selenium.webdriver.support.wait import WeDriverWait   #等待事件

browser = webdriver.Chrome()
wait = webdriverwait(browser,10)
browser.get('https://www.baidu .com')

input = browser.find_element_by_id('kw')    #id选择器
input.send_keys('张开嘴')        #获取到input框就可以往里面填值了
time.sleep(1)
input.clear()     #清空值
submit = browser.find_element_(By.ID,'su')
submit.click()      #点击事件

#有时候点击事件会有问题,选择键盘处理
submit.send_keys(Keys.ENTER)
print(input.get_attribute('name'))  # 获取name属性
print(input.text)   # 获取内容,但这里的input没有text
print(input.tag_name)
print(input.get_property('name'))  # 获取给定属性用法类似get_attribute
print(browser.find_element_by_class_name('mnav').text)   # 找个有text的

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐