Java利用selenium模拟淘宝登录
代码实现
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.interactions.Actions;
import org.springframework.util.ClassUtils;import java.util.Objects;/*** 淘宝模拟登录** @author tarzan* @version 1.0* @date 2020/8/7* @since JDK1.8*/
public class TaoBao {private static String webDriver = "webdriver.chrome.driver";private static String webDriverPath = ClassUtils.getDefaultClassLoader().getResource("chromedriver/chromedriver.exe").getPath();private static String mobileUrl = "https://login.m.taobao.com/login.htm";private static WebDriver driver = null;private static String username = "你的账户";private static String password = "你的密码";public static void main(String[] args) {start();}/*** 方法描述: 启动** @throws* @author tarzan Liu* @date 2020年08月07日 12:42:02*/public static void start() {System.setProperty(webDriver, webDriverPath);ChromeOptions options = new ChromeOptions();options.addArguments("Accept=text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8");options.addArguments("Accept-Encoding=gzip, deflate, sdch");options.addArguments("Accept-Language=zh-CN,zh;q=0.8");options.addArguments("Connection=keep-alive");options.addArguments("Host=activityunion-marketing.meituan.com");options.addArguments("Upgrade-Insecure-Requests=1");options.addArguments("User-Agent=Mozilla/5.0 (iPhone; CPU iPhone OS 8_0 like Mac OS X) AppleWebKit/600.1.3 (KHTML, like Gecko) Version/8.0 Mobile/12A4345d Safari/600.1.4");try {if (Objects.isNull(driver)){driver = new ChromeDriver(options);userLogin(driver);}} catch (Exception e) {e.printStackTrace();} finally {if (Objects.nonNull(driver)) {// driver.close();}}}/*** 登录模块*/private static void userLogin(WebDriver driver) throws Exception {driver.get(mobileUrl);Thread.sleep(200);//等待0.2秒WebElement usernameWebElement = driver.findElement(By.id("fm-login-id"));usernameWebElement.sendKeys(username);WebElement passwordWebElement = driver.findElement(By.id("fm-login-password"));passwordWebElement.sendKeys(password);//模拟滑动Thread.sleep(1000);WebElement draggable = driver.findElement(By.id("nc_1_n1z"));//定位元素Actions bu = new Actions(driver); // 声明action对象bu.clickAndHold(draggable).build().perform(); // clickAndHold鼠标左键按下draggable元素不放bu.moveByOffset(380, 2).perform(); // 平行移动鼠标Thread.sleep(200);bu.moveByOffset(400, 2).perform(); // 平行移动鼠标Thread.sleep(200);bu.moveByOffset(420, 2).perform(); // 平行移动鼠标Thread.sleep(1500);WebElement btnWebElement = driver.findElement(By.xpath("//button[@class='fm-button fm-submit password-login']"));btnWebElement.click();}}
技术交流
微信号 :vxhqqh
Java利用selenium模拟淘宝登录相关推荐
- 自学爬虫项目(二)一一利用selenium模拟淘宝登录,爬取商品数据
文章目录 前言 一.明确目标 二.分析过程 三.代码封装 总结 前言 你是否还在为学习Python没有方向而苦恼?快来跟着壹乐一起学习吧!让我们共同进步! 今天我们用selenium与Beautifu ...
- python模拟淘宝登陆_【Python】selenium模拟淘宝登录
# -*- coding: utf-8 -*- from selenium import webdriver from selenium.webdriver.common.by import By f ...
- 零基础带你用python模拟淘宝登录
经过一段时间的学习,并参考各路大神的文章,总结出一些比较适合小白的网络爬虫的小技巧.跟着笔者的思路,循序渐进,可以慢慢找到一点小感觉. 开发环境 笔者选用的是vs code,轻量级,支持各种插件安装. ...
- 利用python从网页查找数据_利用Python模拟淘宝的搜索过程并对数据进行可视化分析...
数据挖掘入门与实战 公众号: datadw 本文讲述如何利用Python模拟淘宝的搜索过程并对搜索结果进行初步的数据可视化分析. 搜索过程的模拟:淘宝的搜索页面有两种形式, 一种形式是, 2019/2 ...
- python爬虫淘宝登录_python爬虫实现模拟淘宝登录
就算所有人都不支持你.这条路会很曲折,你也会一度认为是不是自己选错了,但只要坚持,就算最后没有成功,但努力了就不会有遗憾. python爬虫模拟淘宝登录 小贴士 这个爬虫和搜索引擎的爬虫是有区别的.搜 ...
- python3爬虫学习笔记之模拟淘宝登录
准备工作 使用chrome f12调试模式,抓包查看淘宝登录的整个流程,并查看post请求的数据 值得注意的是,淘宝用的是gbk编码 说明 此版本没有处理验证码,只是单纯的登录 具体的流程和实现都在代 ...
- selenium模拟淘宝登陆
使用selenium打开浏览器,模拟人工进行淘宝的登陆活动可以在网上找到两种解决方案. 第一种方案是打开网站后,通过find_element_by_xpath 依次寻找用户名录入框,密码录入框,登陆按 ...
- Python+Selenium模拟淘宝滑块并爬取商品数据
注:如果侵犯了Alibaba的权益,请联系我删除. 上一篇博客已经完成了模拟淘宝登陆,本节主要记录如何爬取淘宝商品列表页数据,同时如何模拟人的操作完成滑块的验证. 代码如下: #encoding=ut ...
- python模拟淘宝登录后上下架商品_Python 淘宝系列(三): 模拟登陆成功后获取购物车信息...
依然采用IE的F12开发者工具分析抓取到的数据. 关键问题 获取token后,重定向地址的获取 一般网站登录成功后,跳转方式主要有两种:(1)服务器返回的响应头中包含 location header, ...
最新文章
- Tomcat 8.5——配置阿里云免费SSL证书(PFX格式证书)[启用HTTPS协议]
- pat 乙级 1028 人口普查(C++)
- 【RK3399Pro学习笔记】二、Thinker Edge R 内网穿透以实现远程SSH
- 前端学习(3049):vue+element今日头条管理-请求获取数据
- (2021) 23 [持久化] I/O设备与驱动
- 算法每日学打卡:01-21打卡(解答后面整理)
- java mybits架构图_java架构之路-(mybatis源码)mybatis执行流程源码解析
- 硬件服务器processor是什么,服务器硬件检测(采用mcelog)
- [WM][转]PPC中如何判断网络已经连接或者断开
- qt截图怎样实现橡皮擦_利用QT实现截屏的四种方法
- linux 搭建cloudreve win映射网络驱动器WebDav
- 好文汇总(不断更新)
- oracle odac 客户端 区别,ODAC使用指南 (一)ODAC常见问题集
- 山西台达plc可编程控制器_PLC可编程控制器常见的应用领域
- 还原扩容的缩水U盘真实容量方法,让数据免受损失
- CES2020 | 小牛电动成为科技出行的“另类”标杆
- vmstat 命令参数详解
- 从http协议看百度360大战
- 互联网查询信用报告,为什么提示“无法进行注册”?
- 直播程序源码Android10.0 导航栏和状态栏动态控制合集
热门文章
- 新农慕课python答案第零周答案_智慧树慕课答案农产品加工工艺学参考答案公众号...
- 7N60-ASEMI场效应管7N60
- 汽车美容快修店如何快速拓客-云上铺汽车管理软件
- 常用电磁仿真软件的特点
- MindSpore Science科学计算行业套件——MindSpore Elec电磁仿真套件
- stm32f407+lwip+freertos程序附PCB图
- cs224d 作业 problem set1 (一) 主要是实现word2vector模型,SGD,CBOW,Softmax,算法
- 计算机相关专业电气EE,美国电子电气工程(EE)专业的11个主要研究方向
- 迅雷 6.6.6 支持 Big Sur
- ConcurrentHashMap 与 CAS