Python编程使用Selenium模拟淘宝登录实现过程
作者:胡桃_ 发布时间:2023-08-29 00:56:53
标签:Python,Selenium,淘宝登录
一、利用xpath进行(全程使用)
driver.find_element_by_xpath()
二、代码部分与图片内容
打开淘宝网站,点击登录,输入账号密码,进入网站,搜索框中输入电脑,然后点击搜索
#导入selenium
from selenium import webdriver
#导入等待时间
import time
#使用火狐浏览器进行访问
driver = webdriver.Firefox()
#访问淘宝网站
driver.get("http://www.taobao.com")
#点击登录按钮
driver.find_element_by_xpath("html/body/div[4]/div[2]/div[1]/div/div[2]/div[1]/a[1]").click()
# 跳转页面
handles = driver.window_handles
print(handles)
#表单
tb = driver.find_element_by_tag_name("iframe")
driver.switch_to.frame(tb)
# 通过窗口的句柄进入的窗口
driver.switch_to.window(handles[1])
#点击账号进行输入
driver.find_element_by_xpath(".//*[@id='fm-login-id']").send_keys("账号")
#点击密码进行输入
driver.find_element_by_xpath(".//*[@id='fm-login-password']").send_keys("密码")
#点击登录按钮
driver.find_element_by_xpath(".//*[@id='login-form']/div[4]/button").click()
#扫码登陆的时间
driver.implicitly_wait(15)
#点击搜索框,搜索电脑
driver.find_element_by_xpath(".//*[@id='q']").send_keys("电脑")
#点击搜索按钮
driver.find_element_by_xpath(".//*[@id='J_TSearchForm']/div[1]/button").click()
搜索后,筛选商品,选择华为、再选择高清游戏、最后选择512G
#筛选商品
#选择“华为”
driver.find_element_by_xpath(".//*[@id='J_NavCommonRowItems_0']/a[8]/span[2]").click()
#等待1秒
time.sleep(1)
#再筛选“高清游戏”
driver.find_element_by_xpath(".//*[@id='J_NavCommonRowItems_0']/a[7]/span[2]").click()
#等待1秒
time.sleep(1)
#再筛选“512G”
driver.find_element_by_xpath(".//*[@id='J_NavCommonRowItems_0']/a[1]/span[2]").click()
#等待1秒
time.sleep(1)
#选择第一个筛选出来的商品,进行加入购物车等
然后选择商品,进入详情页面
# 选中商品
driver.find_element_by_xpath(".//*[@id='mainsrp-itemlist']/div/div/div[1]/div[1]").click()
#等待3秒
time.sleep(2)
进入详情页面后,选择内存,再选择颜色分类,最后加入购物车
#选择内存
driver.find_elements_by_xpath(".//*[@id='J_isku']/div/dl[1]/dd/ul/li[1]/a/span").click()
#等待1秒
time.sleep(1)
#选择颜色尺寸
driver.find_element_by_xpath(".//*[@id='J_isku']/div/dl[3]/dd/ul/li[5]/a/span").click()
#等待1秒
time.sleep(1)
#进入商品详情页面,点击加入购物车
driver.find_element_by_xpath(".//*[@id='J_juValid']/div[2]/a").click()
#等待1秒
time.sleep(1)
加入购物车之后,我们选择去购物车结算,最后到购物车结算界面
1、
#最后进入购物车进行结算
driver.find_element_by_xpath(".//*[@id='J_ResultSummary']/div[4]/a[2]").click()
2、
3、保存图片结果
#保存图片
driver.get_screenshot_as_png()
来源:https://blog.csdn.net/weixin_45999852/article/details/120854056


猜你喜欢
- 安装方法一:①进入python文件夹执行指令(前提是支持pip指令):pip3 install Beautifulsoup4②回车待安装完成
- Mac本地环境搭建在Mac系统,我们可以使用MAMP Pro (官方网站:https://www.mamp.info/en/)软件来搭建本地
- jemalloc源于Jason Evans 2006年在BSDcan conference发表的论文:《A Scalable Concurr
- 一直有爱看美剧的习惯,一方面锻炼一下英语听力,一方面打发一下时间。之前是能在视频网站上面在线看的,可是自从广电总局的限制令之后,进口的美剧英
- 前言在早期学Python的时候,买了一本《Python编程快速上手-让繁琐工作自动化》。这本书里面讲得都比较基础,不过却非常的实用。估计从书
- 一、工具python3第三方类库requestspython3-pyqt5(GUI依赖,不用GUI可不装)ubuntu系列系统使用以下命令安
- 我在用 ASP 写一个数据库的应用的时候,总是被那些看起来好好的SQL语句执行起来产生的错误代码搞得头疼,请问有没有更好的解决办法啊?有,我
- 准备工作本文用到的表格内容如下:先来看一下原始情形:import pandas as pddf = pd.read_excel(r'
- template代码:<template> <div class="hello"> <ul
- 例如:将日期格式为2009-6-8的转换为2009-06-08,给小于10的数字补上一个0方法一:year(now)
- 参考官方文档 http://dev.mysql.com/doc/refman/5.7/en/select-into.htmlmysql>
- 使用一阶线性方程预测波士顿房价载入的数据是随sklearn一起发布的,来自boston 1993年之前收集的506个房屋的数据和价格。loa
- 【基本介绍】【格式】:pivot(聚合函数 for 需要转为列的字段名 in(需要转为列的字段值))【说明】:实现将指定字段的字段值转换为列
- 啥是依赖规范可以以各种形式指定项目的依赖项,取决于依赖项的类型以及安装项目可能需要的可选约束版本约束^ 约束编写规范允许的版本范围^1.2.
- 目标在本章中,将学习"Harris Corner Detection”背后的思想函数:cv2.cornerHa
- 开发需求python 3.7+pygame 1.9+演示项目地址https://github.com/Mr-han11/PythonSupe
- 1.父组件传递数据给子组件父组件数据如何传递给子组件呢?可以通过props属性来实现父组件:<parent> <child
- 以下的实例为去除指定表中数据类型是VARCHAR,CHAR,NVARCHAR的字段值中的不可见字符。 注释:此处只去掉前后的不可见字符,不包
- 所谓最小二乘法,即通过对数据进行拟合,使得拟合值与样本值的方差最小。线性拟合这个表达式还是非常简单的。对于有些情况,我们往往选取自然序列作为
- 成天都要与样式打交道的朋友,相信对CSS选择符(CSS Selectors)都不会陌生。不过对于刚接触或者还不是很熟悉css的朋友来说,能够