selenium webdriver+python基本操作.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
### Selenium WebDriver + Python 基本操作详解 #### 一、概述 Selenium WebDriver 是一个自动化测试工具,它可以通过模拟真实用户的操作来进行自动化测试。结合 Python 的强大功能,可以实现非常复杂的网页自动化任务。本文将详细介绍 Selenium WebDriver 结合 Python 的基本操作。 #### 二、常用方法 1. **quit()**: - **功能**:关闭当前打开的浏览器实例。 - **示例**: ```python browser.quit() ``` 2. **close()**: - **功能**:关闭当前标签页或窗口。 - **示例**: ```python browser.close() ``` 3. **time.sleep()**: - **功能**:暂停脚本执行一段时间,通常用于等待页面加载完成。 - **示例**: ```python import time time.sleep(5) # 暂停5秒 ``` 4. **.title**: - **功能**:获取当前页面的标题。 - **示例**: ```python print(browser.title) ``` 5. **.forward()**: - **功能**:前进到下一个页面。 - **示例**: ```python browser.forward() ``` 6. **.back()**: - **功能**:回到上一个页面。 - **示例**: ```python browser.back() ``` 7. **.refresh()**: - **功能**:刷新当前页面。 - **示例**: ```python browser.refresh() ``` 8. **.current_url**: - **功能**:获取当前页面的URL。 - **示例**: ```python print(browser.current_url) ``` 9. **.window_handles**: - **功能**:获取所有打开的窗口句柄。 - **示例**: ```python print(browser.window_handles) ``` 10. **.current_window_handle**: - **功能**:获取当前窗口的句柄。 - **示例**: ```python print(browser.current_window_handle) ``` 11. **.switch_to.window(“window_name”)**: - **功能**:切换到指定窗口。 - **示例**: ```python browser.switch_to.window("新窗口") ``` 12. **对话框操作**: - **.switch_to.alert**: - **功能**:切换到弹出的对话框。 - **示例**: ```python alert = browser.switch_to.alert ``` - **.accept()**: - **功能**:接受对话框(例如点击确定按钮)。 - **示例**: ```python alert.accept() ``` - **.dismiss()**: - **功能**:拒绝对话框(例如点击取消按钮)。 - **示例**: ```python alert.dismiss() ``` - **.text**: - **功能**:获取对话框中的文本。 - **示例**: ```python print(alert.text) ``` 13. **Send_keys(‘keys’)**: - **功能**:向输入框发送文本。 - **示例**: ```python element.send_keys("hello") ``` #### 三、元素定位方法 1. **ID定位**: - **功能**:根据元素的ID进行定位。 - **示例**: ```python element = browser.find_element_by_id('id') ``` 2. **Name定位**: - **功能**:根据元素的name属性进行定位。 - **示例**: ```python element = browser.find_element_by_name('name') ``` 3. **CSS定位**: - **功能**:使用CSS选择器进行定位。 - **示例**: ```python element = browser.find_element_by_css_selector('#foo') ``` 4. **XPath定位**: - **功能**:使用XPath表达式进行定位。 - **示例**: ```python # 属性定位 element = browser.find_element_by_xpath("//input[@id='kw']") # ID相关性定位 element = browser.find_element_by_xpath("//div[@id='fm']/form/span/input") # 位置定位 element = browser.find_element_by_xpath("//tr[7]/td[2]") # 文本包含定位 element = browser.find_element_by_xpath("//a[contains(text(),'网页')]") # 链接定位 element = browser.find_element_by_xpath("//a[@href='http://www.baidu.com/']") ``` 5. **Link定位**: - **功能**:根据链接文本进行定位。 - **示例**: ```python element = browser.find_element_by_link_text("贴吧") ``` 6. **PartialLinkText定位**: - **功能**:根据部分链接文本进行定位。 - **示例**: ```python element = browser.find_element_by_partial_link_text("吧") ``` 7. **Tag定位**: - **功能**:根据HTML标签进行定位。 - **示例**: ```python element = browser.find_element_by_tag_name('foo') ``` #### 四、截屏操作 - **功能**:对当前页面进行截图。 - **示例**: ```python browser.get_screenshot_as_file('/Screenshots/foo.png') ``` #### 五、示例 假设我们要通过不同的方式定位百度输入框: ```python # 导入必要的库 from selenium import webdriver # 创建WebDriver对象 browser = webdriver.Chrome() # 打开百度首页 browser.get("https://www.baidu.com") # 通过ID方式定位 element = browser.find_element_by_id("kw") element.send_keys("selenium") # 通过name方式定位 element = browser.find_element_by_name("wd") element.send_keys("selenium") # 通过tag name方式定位 element = browser.find_element_by_tag_name("input") element.send_keys("selenium") # 关闭浏览器 browser.quit() ``` 以上就是关于Selenium WebDriver + Python的基本操作介绍。通过这些基本操作,我们可以实现自动化测试、数据抓取等多种应用。
- 粉丝: 4
- 资源: 7万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助