元素基本操作⭐⭐
# 文本框和文本域⭐
点击:
click()
清空
- clear()
输入
- send_keys("数据")
- 保留原有的数据,追加输入
- 文本域输入时使用转义字符"\n"转行
获得属性值:
- get_attribute("html里的标记属性名")
- "value"(最常使用)代表当前文本框或文本域里的当前内容(str类型)。
- "title'"代表鼠标移动到上面时显示的提示,
- "placeholder",代表未输入任何内容时的占位符。
获得当前是否可用的状态值:
- is_enabled()
# 按钮
点击:
- click()
获得属性值:
- 最常使用的属性名是"value",
获得当前是否可用的状态值:
- is_enabled()
# 单选按钮和复选框⭐
- 点击:
- click()
- 获得当前是否可用的状态值:
- is_enabled()
- 获得当前是否已经被选中的状态值:
- is_selected()
# 超级链接和图片
点击:
- click()
获得属性值:
get_attribute("属性名")
得到的属性值类型是str
对于超级链接,常用属性名是href,代表跳转到的目标网页URL。
对于图片,常用属性名是src,代表图片的存储路径。
# 超级链接和静态文本⭐
- 获得文本内容:开始和结束标记之间的文本字符串。
- text
- text是一个webelement页面元素对象的属性名
- 得到的文本是str类型的数据
#2. 输入关键字100,判断“搜索“按钮如果可用,点击搜索按钮,等待3秒
#3. 点击搜索结果区域里的“金立 A30“的商品名称,等待3秒
#4. 打印默认“购买数量“文本框的当前默认值
#5. 获得“商品库存“的台数
#6. 如果台数大于3台,清空“购买数量“文本框,输入3
#7. 判断“数据线“复选框,如果没有被选中,就点击选中它
#8. 判断“线控耳机“复选框,如果没有被选中,就点击选中它
#9. 获得此时的“商品总价“,如果是”¥6210元“,打印”总价计算正确“,否则打印”总价计算错误“。
driver.find_element(By.ID, 'keyword').send_keys('100')
driver.find_element(By.NAME, 'imageField').click()
driver.find_element(By.LINK_TEXT, '金立 A30').click()
input = driver.find_element(By.ID, 'number')
num = input.get_attribute('value')
print(f'购买数量为:{num}')
stock = driver.find_element(By.XPATH, "//dd[strong='商品库存:']").text
start = stock.index(' ') + 1
stock = stock[start:stock.index(' ', start)]
print(f'库存为:{stock}')
if int(stock) > 3:
input.clear()
input.send_keys(3)
check190 = driver.find_element(By.CSS_SELECTOR, '#spec_value_190')
if not check190.is_selected():
check190.click()
check189 = driver.find_element(By.CSS_SELECTOR, '#spec_value_189')
if not check189.is_selected():
check189.click()
sum = driver.find_element(By.CSS_SELECTOR, '#ECS_GOODS_AMOUNT').text
if sum == '¥6210元':
print('总价计算正确')
else :
print('总价计算错误')
- 小结
- 点击click()
- 清空clear()
- 输入send_keys("数据")
- 获得属性值:get_attribute("属性名")
- 获得当前是否可用的状态值is_enabled()
- 获得当前是否已经被选中的状态值is_selected()
#
上次更新: 2025/5/2 14:40:28