selenium自动化的输入和回车操作

# 导入模块
from selenium.webdriver import Chrome

# 导入键盘
from selenium.webdriver.common.keys import Keys

# 导入时间模块
import time


# 创建一个浏览器
web = Chrome()


# 打开一个网址
web.get("http://xxxxxxxxx.com")


# 找到某个元素. 点击它
el = web.find_element_by_xpath('//*[@id="changeCityBox"]/ul/li[1]/a')
el.click()  # 点击


time.sleep(1)  # 让浏览器缓一会儿

# 找到输入框. 输入要搜索的内容  python  =>  输入回车/点击搜索按钮
web.find_element_by_xpath('//*[@id="search_input"]').send_keys("python", Keys.ENTER) # 直接就回车了ENTER


time.sleep(1)
# 查找存放数据的位置. 进行数据提取
# 找到页面中存放数据的所有的li
lis = web.find_elements_by_xpath('//*[@id="s_position_list"]/ul/li')
for li in lis:
    name = li.find_element_by_tag_name("h3").text
    price = li.find_element_by_xpath("./div/div/div[2]/div/span").text
    company = li.find_element_by_xpath('./div/div[2]/div/a').text
    print(company, name, price)
 

### 使用 Selenium 进行网页自动化测试 为了实现网页自动化测试,Selenium 提供了一组强大的工具来控制浏览器行为。具体来说,通过编程语言接口可以模拟用户的交互动作,如点击按钮、填写表单等。 #### 准备工作 在开始编写自动化脚本之前,需确保安装了适当版本的WebDriver以及相应浏览器驱动程序[^5]。例如对于Chrome浏览器而言,应从官方渠道获取最新版`chromedriver.exe`文件,并将其路径配置到环境变量中以便于调用。 #### 创建并启动浏览器实例 以 Python 为例展示如何初始化一个带有特定选项配置的 Chrome 浏览器会话: ```python from selenium import webdriver from selenium.webdriver.chrome.options import Options from selenium.webdriver.chrome.service import Service # 设置浏览器参数 chrome_options = Options() chrome_options.add_argument('--no-sandbox') chrome_options.add_experimental_option('detach', True) # 启动浏览器服务 service = Service(executable_path='path/to/chromedriver') # 实例化 WebDriver 对象 driver = webdriver.Chrome(service=service, options=chrome_options) ``` 这段代码片段展示了怎样创建自定义设置下的 Chrome 浏览器对象 `driver` ,其中包含了不启用沙箱模式(`--no-sandbox`) 保持窗口开启 (`'detach':True`) 的两个重要特性[^4]。 #### 访问目标网站 一旦成功建立了与浏览器之间的连接,则可以通过简单的命令让其加载指定URL页面: ```python url = "http://example.com" driver.get(url) ``` 此操作将会使浏览器导航至给定链接位置,在这里假设访问的是 example.com 网站主页。 #### 执行基本交互操作 接下来介绍几种常见的元素定位方式及其对应的事件触发方法: - **按ID查找元素** ```python element_id = 'username' elem = driver.find_element_by_id(element_id) elem.send_keys('test_user') ``` 上述例子说明了当 HTML 文档中含有 id 属性等于 username 的输入框时,可通过 find_element_by_id 方法找到该控件并向里面发送字符串 test_user 来完成用户名填充过程[^1]。 - **提交表单** 如果页面上有 form 表单结构并且想要模仿用户按下 submit 按钮的行为,可以直接调用 elem.submit() 或者针对具体的 button 元素执行 click 动作。 #### 关闭浏览器 最后不要忘记释放资源,在整个测试流程结束后记得关闭当前打开的所有标签页乃至退出整个应用程序进程: ```python driver.quit() ``` 以上就是利用 Selenium 库来进行简单 Web 自动化的入门指南[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值