【《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()
相关推荐
铁蛋AI编程实战2 分钟前
AI调用人类服务入门与Python实现(30分钟搭建“AI+真人”协作系统)
开发语言·人工智能·python
zhougl9963 分钟前
Java 常见异常梳理
java·开发语言·python
sensen_kiss6 分钟前
Jupter Notebook 使用教程
大数据·人工智能·python·学习·数据分析
独自破碎E7 分钟前
已经 Push 到远程的提交,如何修改 Commit 信息?
开发语言·github
多恩Stone17 分钟前
【3D-AICG 系列-1】Trellis v1 和 Trellis v2 的区别和改进
人工智能·pytorch·python·算法·3d·aigc
数智工坊20 分钟前
【数据结构-栈、队列、数组】3.3栈在括号匹配-表达式求值上
java·开发语言·数据结构
lsx20240622 分钟前
Bootstrap 插件概览
开发语言
毕设源码-钟学长23 分钟前
【开题答辩全过程】以 基于PHP的动漫社区的设计与实现为例,包含答辩的问题和答案
开发语言·php
狂奔蜗牛飙车26 分钟前
Python学习之路-Python3 迭代器与生成器学习详解
开发语言·python·学习·#python学习笔记·python迭代器生成器
xqqxqxxq30 分钟前
洛谷算法1-3 暴力枚举(NOIP经典真题解析)java(持续更新)
java·开发语言·算法