selenium实现浏览器自动化

2022-08-18 17:33:38 浏览数 (1)

安装Selenium

代码语言:javascript复制
$ pip install selenium

// 最好设置你安装的python位置
$ pip install selenium --target=E:python3.10.4Libsite-packages

安装Chrome浏览器驱动

Chrome 浏览器驱动下载地址

需要选择与当前浏览器版本匹配的版本

自动化打开浏览器

代码语言:javascript复制
from selenium import webdriver
from selenium.webdriver.chrome.service import Service

# 需要自动打开的网站
url = 'https://www.baidu.com'
# 创建 WebDriver 对象,指明使用chrome浏览器驱动
wd = webdriver.Chrome(service=Service(r'd:chromedriver.exe'))
# 调用WebDriver 对象的get方法 可以让浏览器打开指定网址
wd.get(url)

利用自动化在百度搜索需要的信息就需要学习一下基本的操控元素的方法,根据HTML的Id获取元素,获取百度的input输入框id

代码语言:javascript复制
<input type="text" class="s_ipt" name="wd" id="kw" maxlength="100" autocomplete="off">

# 使用find_element方法获取对应的WebElement对象
element = wd.find_element(By.ID, 'kw')

# 向获取的元素中设置需要查询的值
element.send_keys('是小张啊n')

# 使用 click 方法点击查询 百度一下 
# 1、首先需要获取元素
<input type="submit" value="百度一下" id="su" class="btn self-btn bg s_btn">

element = wd.find_element(By.ID, "su")
# 点击当前元素
element.click()

当前虽然页面已经实现了百度一下的查询,但是当前所处的页面地址还是在https://www.baidu.com/

需要程序获取跳转后的地址

代码语言:javascript复制
# wd.current_url 获取当前页面的地址
wd.get(wd.current_url)

关于selenium操作元素的方式

代码语言:javascript复制
class By:
    # 根据id选择
    ID = "id"
    # XML 和 HTML 文档中选择节点
    XPATH = "xpath"
    LINK_TEXT = "link text"
    PARTIAL_LINK_TEXT = "partial link text"
    # 根据name选择
    NAME = "name"
    # 根据HTML标签选择
    TAG_NAME = "tag name"
    # 根据class 选择
    CLASS_NAME = "class name"
    # 根据css选择器选择
    CSS_SELECTOR = "css selector"

0 人点赞