【《python爬虫入门教程12--重剑无峰168》】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

《python爬虫入门教程12--selenium的安装与使用》


selenium就是一个可以实现python自动化的模块,上次我们更新了如何安装,这次我们来具体看看,它的语法,大家可以自己尝试一下,我的代码直接放在下面。

前言

提示:这里可以添加本文要记录的大概内容:
selenium安装的前期工作:https://blog.csdn.net/xaing1314/article/details/144869489?spm=1001.2014.3001.5502


提示:以下是本篇文章正文内容,下面案例可供参考

一、selenium八种定位元素的方法

1.完整示例代码

ID = "id"
XPATH = "xpath"
LINK_TEXT = "link text"
PARTIAL_LINK_TEXT = "partial link text"
NAME = "name"
TAG_NAME = "tag name"
CLASS_NAME = "class name"
CSS_SELECTOR = "css selector"

python 复制代码
from selenium import webdriver
from selenium.webdriver.chrome.service import Service

# 创建浏览器操作对象
brower = webdriver.Chrome(service=Service(r'chromedriver.exe'))

url = 'https://www.baidu.com'
brower.get(url)

# 元素定位 -- 新的版本有八种方法
# ID = "id"
# XPATH = "xpath"
# LINK_TEXT = "link text"
# PARTIAL_LINK_TEXT = "partial link text"
# NAME = "name"
# TAG_NAME = "tag name"
# CLASS_NAME = "class name"
# CSS_SELECTOR = "css selector"

# 找id="su"的对象
button = brower.find_element('id','su')
print(button)

# button = brower.find_element(by="id", value='su')
# print(button)

# 找name="wd"的对象
# button = brower.find_element(by="name", value='wd')
# print(button)

# 加s就代表获取的所有满足条件的
# button = brower.find_elements(by='xpath', value='//input[@id="su"]')
# print(button)

# 根据标签的来获取对象
# button = brower.find_elements(by="tag name", value="input")
# print(button)

# 使用的bs4的语法来css获取对象
# button = brower.find_element(by="css selector", value="#su")
# print(button)

# 根据link text 来获取对象
# button = brower.find_element(by="link text", value="地图")
# print(button)

二、总结。掌握这几种方法再在它们后面加入.click() 或者其他函数则可以在网页中操作此元素。列如

python 复制代码
driver.find_element(by="css selector", value="#fromStationText").click()
driver.find_element(by="css selector", value="#fromStationText").send_keys(login["from_city"])
driver.find_element(by="css selector", value="#fromStationText").send_keys(Keys.ENTER)
driver.find_element(by="css selector", value="#train_date").clear()
相关推荐
这里有鱼汤1 小时前
【花姐小课堂】新手也能秒懂!用「风险平价」打造扛造的投资组合
后端·python
databook15 小时前
Manim实现闪光轨迹特效
后端·python·动效
Juchecar16 小时前
解惑:NumPy 中 ndarray.ndim 到底是什么?
python
用户83562907805116 小时前
Python 删除 Excel 工作表中的空白行列
后端·python
Json_16 小时前
使用python-fastApi框架开发一个学校宿舍管理系统-前后端分离项目
后端·python·fastapi
子竹聆风18 小时前
Feapder框架UpdateItem使用技巧:如何优雅地实现"只更新有值字段"
爬虫
数据智能老司机1 天前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机1 天前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机1 天前
精通 Python 设计模式——性能模式
python·设计模式·架构