【《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()
相关推荐
Shirley~~几秒前
力扣hot100:每日温度
开发语言·javascript·ecmascript
qZ6bgMe433 分钟前
使用Mixin类简单重构配置模块
网络·python·重构
巧妹儿4 分钟前
AI Agent 实战:MySQL 监控指标查询 Skill|华为云 + 腾讯云双兼容可直接复用
python·mysql·ai·大模型·华为云·腾讯云
froginwe1121 分钟前
《WebPages 邮局》
开发语言
@insist12331 分钟前
网络工程师-广域网与接入网技术(一):核心协议与流量控制
开发语言·网络·网络工程师·软考·软件水平考试
ZC跨境爬虫39 分钟前
免费验证码识别:用ddddocr实现Playwright自动化登录
爬虫·python·自动化
ˇasushiro1 小时前
终端工具配置
开发语言·ios·swift
数据知道1 小时前
claw-code 源码详细分析:子系统目录地图——几十个顶层包如何用五条轴(会话 / 工具 / 扩展 / 入口 / 桥接)读懂?
服务器·python·ai·claude code
cxr8281 小时前
GPU 加速声场求解器 - 深度扩展
人工智能·python
zaim11 小时前
计算机的错误计算(二百二十六)
java·python·c#·c·错数·mpmath