05-爬虫进阶_selenium(05 selenium操作表单元素)

一、常见的表单元素

  • input:  <input type=text>表示文本输入框,<input type=password>表示密码输入框,此外还有<input type=email>、 <input type=number>等
  • button:  元素定义可点击的按钮,<input  type='submit'>
  1. <input type="button" > : 这就是一个按钮。如果你不写javascript 的话,按下去什么也不会发生。
  2. <input type="submit" > : 这样的按钮用户点击之后会自动提交 form,除非你写了javascript 阻止它。
  3. <button type="button">: 这个按钮放在 form 中也会点击自动提交,比前两个的优点是按钮的内容不光可以有文字,还可以有图片等多媒体内容
  • checkbox: 复选输入框, <input type=checkbox>
  • select: 下拉列表 

二、操作表单元素

1、操作输入框:分为两步,第一步:找到这个元素。第二步:使用sena_keys(valuve),将数据填充进去。示例代码如下:

inputTag = driver.find_element_by_id(kw)
inputTag_send_keys('python")

使用clear方法可以清除输入框中的内容。示例代码如下:

inputTag.clear()

 

2、操作checkbox:因为要选中checkbox标签,在网页中是通过鼠标点击的。因此想更选中checkbox标签,那么先选中这个标签,然后执行click事件,示例代码如下:

rememberTag = driver.find_element_by_nane ("remenberfile")
rememberTag .click()

3、选择select:select元素不能直接点击,因为点击后还需选中元素,这时候selennium专门为select标签提供了一个类seleniun.webediver.support.ui.Select。将获取到的元素当成参数传到这个类中,创建这个对象。以后数可以使用这个对象进行选择了。示例代码如下:

from seleniun.webdriver support.ui import Select

# 这中这个标签,然后使用Select创造对象
selectTag = Select(driver.find_element_by_name("jumpMenu"))
# 根据索引选择
selectTag.select_by_index(1)
# 根据值选择
selectTag = select_by_value("http://www.95yueba.com")
# 根据可视的文本选择
selectTag = select_by_visible_text("95秀客户端")
# 取消选择所有选项
selectTag.deselect_all()

4、操作按钮:操作按钮有很多种方式。比如单击、右击、双击等。这里讲一个最常用的,就是点击。直接调用click函数就可以了。示例代码如下:

inputTag = driver_find_element_by_id("su")
inputTag.click()

三、举例

# 1)操作输入框:input
from selenium import webdriver
import time

driver_path = r"D:\application\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(executable_path = driver_path)
driver.get('https://www.baidu.com/')

inputTag = driver.find_element_by_id("kw")
inputTag.send_key('python')

time.sleep(3)
inputTag.clear()


# 2) 操作checkbox: 如豆瓣登录界面的“记住我”那里
from selenium import webdriver

driver_path = r"D:\application\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(executable_path = driver_path)
driver.get('https://www.douban.com/')

remberBtn = driver_find_element_by_name('remember')
remberBtn.click()
# 注意:click(),点击两次就是取消选中了


# 3)操作下拉列表: select
from selenium import webdriver
from selenium.webdriver.support.ui import Select

driver_path = r"D:\application\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(executable_path = driver_path)
driver.get('https://www.dobai.com/')

selectBtn = Select(driver_find_element_by_name('jumpMenu'))
# selectTag.select_by_index(1)
# selectTag = select_by_value("http://m.95xiu.com/")
selectBtn.select_by_visible_text("95秀客户端")


# 4)点击事件举例: 百度页面
from selenium import webdriver

driver_path = r"D:\application\chromedriver_win32\chromedriver.exe"
driver = webdriver.Chrome(executable_path = driver_path)
driver.get('https://www.baidu.com/')

inputTag = driver.find_element_by_id("kw")
inputTag.send_key('python')

submitTag = driver_find_element_by_id('su')
submitTag.click()

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值