Python selenium库学习使用实操二

系列文章目录

Python selenium库学习使用实操


文章目录


前言

在上一篇文章中,我们完成Selenium环境的搭建,和简单的自动化。今天继续深入学习。今天的目标是完成模拟登录,和表单录入。


一、模拟登录

如下图,我们采用密码登录的方式,需要将账号、密码自动填入表单中,然后点击登录。

这里采用xpath的方式获取元素,XPath即为XML路径语言(XML Path Language),它是一种用来确定XML文档中某部分位置的语言。

python 复制代码
element = driver.find_element("xpath", "//*[@placeholder='账号/手机号']")
element.send_keys("18900000000")
time.sleep(1)
element = driver.find_element("xpath", "//*[@placeholder='请输入登录密码']")
element.send_keys("123456")

二、表单录入

有如下一张表单

容易看出商品名称和货号是两个文本输入框,容易得到元素并写入

python 复制代码
            # 商品名称
            spuName = driver.find_element(
                "xpath",
                "//*[@placeholder='商品名称不少于2个字,建议使用:品牌+属性+产品']",
            )
            # 货号
            searchCode = driver.find_element("xpath", "//*[@placeholder='请输入货号']")

但是其他几个下拉框就比较困难了。查了下网上的教程如下:

selenium操作页面下拉框,一般来说分为两种情况,一种是标准的select标签下拉框;另一种是非select类下拉框,比如ul-li标签下拉框。针对select标签的下拉框,selenium提供了一个select类;针对非select标签实现的下拉框,可以通过模拟鼠标点击的方式实现操作。

1、select标签下拉框

如下图所示,下拉框为select标签,此时可以使用select类提供的三种方法定位到下拉框中的元素。

2、非select标签下拉框

针对非select标签的下拉框,按照常规手工操作的步骤,一步一步找到元素,点击操作。

目前暂未验证是否可行,国庆之后再接着学习吧

相关推荐
努力努力再努力wz1 分钟前
【Linux网络系列】深入理解 I/O 多路复用:从 select 痛点到 poll 高并发服务器落地,基于 Poll、智能指针与非阻塞 I/O与线程池手写一个高性能 HTTP 服务器!(附源码)
java·linux·运维·服务器·c语言·c++·python
努力努力再努力wz4 分钟前
【Linux网络系列】万字硬核解析网络层核心:IP协议到IP 分片重组、NAT技术及 RIP/OSPF 动态路由全景
java·linux·运维·服务器·数据结构·c++·python
tjc199010055 分钟前
golang如何使用t.Cleanup清理测试_golang t.Cleanup测试清理使用策略
jvm·数据库·python
GHL2842710906 分钟前
Agent相关问题整理学习
学习·ai
qq_429499576 分钟前
恒流源学习
学习
小糖学代码11 分钟前
LLM系列:2.pytorch入门:3.基本优化思想与最小二乘法
人工智能·python·算法·机器学习·ai·数据挖掘·最小二乘法
214396517 分钟前
如何提升SQL数据更新的安全性_使用行级锁与悲观锁机制
jvm·数据库·python
叶子丶苏19 分钟前
第二节_机器学习基本知识点
人工智能·python·机器学习·数据科学
东京老树根19 分钟前
SAP学习笔记 - BTP SAP Build05 - SAP BTP BPA简介,Email Destination Settings(TODO)
笔记·学习
SHoM SSER36 分钟前
SQL之CASE WHEN用法详解
数据库·python·sql