前置条件:Windows系统,PyCharm集成开发环境,Selenium浏览器自动化测试框架,Python语言
一、元素定位
1. xpath
# 1-(1)使用xpath查找元素<div class="test">树懒</div>,并点击,元素包含文本类的内容都可以用此方式
self.driver.find_element_by_xpath('//div[text()="树懒"]').click()
# 1-(2)使用xpath查找元素<input placeholder="请输入树懒">,并输入
self.driver.find_element_by_xpath('//input[@placeholder="请输入树懒"]').send_keys("树懒")
2. css
# 2-(1)使用css查找元素:class="test"
self.driver.find_element_by_css_selector('.test')
# 2-(2)使用css查找元素:<i class="test"></i>
self.driver.find_element_by_css_selector('i.arrow')
# 2-(3)使用css查找元素:<div class="Lists">列表中的第一个
<div>树懒1<div>
<div>树懒2<div>
self.driver.find_element_by_css_selector('.cityLists > div:nth-child(1)')
# 2-(4)使用css查找元素:<div class="btn-content">
<button class="btn first">树懒</button>
self.driver.find_element_by_css_selector('.btn.first')
3. class name
# 使用class name查找元素:<div class="test">树懒</div>
self.driver.find_element_by_class_name("test")
4. id
# 使用id查找元素:id="shulan",并输入
self.driver.find_element_by_id('shulan').send_keys("树懒")
5. 找到元素不能直接操作点击时,调用js,先定义元素再操作点击
element = self.driver.find_element_by_xpath('//div[text()="树懒"]')
self.driver.execute_script("arguments[0].click();", element)
execute_script:执行脚本
二、鼠标操作
# 页面滚动到底部
self.driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
# 使"树懒二"滑动到"树懒一"的位置,用于滑动时间日期
div1 =self.driver.find_element_by_xpath('//div[text()="树懒一"]')
div2 =self.driver.find_element_by_xpath('//div[text()="树懒二"]')
ActionChains(self.driver).drag_and_drop(div2, div1).perform()
三、浏览器窗口设置
# 设置窗口大小
self.driver.set_window_size(width=480,height=825)
# 设置窗口最大
cls.driver.maximize_window()
四、启动浏览器
self.driver = webdriver.Chrome()
五、打开测试地址
self.driver.get("https://www.jianshu.com/u/9acd23c308a7")