【《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()
相关推荐
朝朝辞暮i8 小时前
C++ 第 23 课:class —— 开始真正进入面向对象
开发语言·c++·算法
言乐68 小时前
HTML视频审核模型
python·django·virtualenv·pygame·tornado
小师兄吃牛肉9 小时前
C语言篇:宏
c语言·开发语言
郑同学的笔记9 小时前
【c++随笔28】strcmp 和 memcmp对比
开发语言·c++
言乐69 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
weixin_307779139 小时前
有限产能智能排产与动态重排智能体:从需求解构到技术实现
开发语言·人工智能·算法·架构
kakakahahahaha10 小时前
Windows C盘临时文件清理:%temp%、Windows Temp、Prefetch、Windows.old与hiberfil.sys处理指南
c语言·开发语言·windows
朝朝辞暮i10 小时前
C++ 第 27 课:智能指针 shared_ptr
开发语言·c++·算法
yl453010 小时前
硫酸泄露处理生产商怎么选才够专业
大数据·人工智能·python
朝朝辞暮i10 小时前
C++ 第 29 课:回调函数 Callback
开发语言·c++·算法