博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java使用Selenium操作chrome进行debug
阅读量:2067 次
发布时间:2019-04-29

本文共 865 字,大约阅读时间需要 2 分钟。

想要爬取数据,验证码是必须要过的一关,而如今绝大部分验证码都鬼精鬼精的,想要破解起来比较麻烦。

虽然Selenium这个自动化测试工具可以帮我们模拟用户行为,但是Selenium自带的一些标签可以让网站轻轻松松就识别出你是爬虫,直接把你干掉,那么该怎么绕过这一关呢?

我们可以使用Chrome的debug模式:

1、打开Chrome

String path = "你的Chrome路径";String dir = "存储用户数据的路径";System.setProperty("webdriver.chrome.driver", "你的chromedriver.exe地址");List
cmd = new ArrayList<>();cmd.add(path);cmd.add("--user-data-dir="+ dir);cmd.add("--remote-debugging-port=9222");// 窗口启动最大化cmd.add("--start-maximized");ProcessBuilder process = new ProcessBuilder(cmd);try {
process.start();} catch (IOException e) {
throw e;}

2、Selenium连接Chrome

ChromeOptions options = new ChromeOptions();options.setExperimentalOption("debuggerAddress","127.0.0.1:9222");ChromeDriver driver = new ChromeDriver(options);driver.get("http://www.baidu.com");

这样我们就通过Java打开了Chrome并且用Selenium成功连接,通过这种方式打开的浏览器不会带有Selenium的标签,也就不会被网站识别出来。

转载地址:http://kqfmf.baihongyu.com/

你可能感兴趣的文章
介绍一个小工具:SSL-exporter
查看>>
深入理解 tc ebpf 的 direct-action (da) 模式(2020)
查看>>
为容器时代设计的高级 eBPF 内核特性(FOSDEM, 2021)
查看>>
Loki系列文章
查看>>
高并发、高可用、高可靠微服务架构7大顶级设计思维模型
查看>>
如何使用 registry 存储的特性
查看>>
凉了,stress 无论如何也无法打满 CPU
查看>>
个人学习方法分享
查看>>
时隔多年。。终于有一款云原生消息系统出仕了!
查看>>
[译]数据包在 Kubernetes 中的一生(1)
查看>>
[译]数据包在 Kubernetes 中的一生(2)
查看>>
[译]数据包在 Kubernetes 中的一生(3)
查看>>
从源头解决 Service Mesh 问题最彻底!
查看>>
一次“不负责任”的 K8s 网络故障排查经验分享
查看>>
一次有趣的 Docker 网络问题排查经历
查看>>
KubeSphere Meetup 北京站火热报名中 | 搭载 CIC 2021 云计算峰会
查看>>
深入理解 Linux Cgroup 系列(一):基本概念
查看>>
深入理解 Linux Cgroup 系列(二):玩转 CPU
查看>>
云原生周报第 1 期 | 2019-06-24~2019-06-28
查看>>
Kubernetes Pod 驱逐详解
查看>>