基于selenium实现动态爬取页面(java)


参考文章:https://blog.csdn.net/qq_22003641/article/details/79137327?spm=1001.2014.3001.5506

前言

使用selenium进行爬虫,需要下载相关浏览器的驱动程序,和添加selenium相关的jar包。
浏览器驱动程序地址:

selenium相关依赖:

	<dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.4.0</version>
    </dependency>

jar包下载地址:https://mvnrepository.com/

一、Selenium是什么?

Selenium是一个用于web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。Selenium完全开源,对商业用户也没有任何限制,支持分布式,拥有成熟的社区与学习文档。使用Selenium实现爬虫最大的好处在于能够模拟一个用户正常访问页面,网站后台不容易检测出来,而且使用简单,可以使用java或python等多种编程语言编写用例脚本。

二、Selenium常见的API

1.Selenium定位的方法

Selenium提供了8种定位方式,这些方式在Java中所对应的方法如下:

  • id-------------------------------------------------------------findElement(By.id())
  • name--------------------------------------------------------findElement(By.name())
  • class name------------------------------------------------findElement(By.className())
  • tag name--------------------------------------------------findElement(By.tagName())
  • link text----------------------------------------------------findElement(By.linkText())
  • partial link text-------------------------------------------findElement(By.partialLinkText())
  • xpath-------------------------------------------------------findElement(By.xpath())
  • css selector----------------------------------------------findElement(By.cssSelector())

具体使用例子:

<html>
  <head></head>
  <body link="#0000cc">
    <a id="result_logo" href="/" onmousedown="return c({
       'fm':'tab','tab':'logo'})">
    <form id="form" class="fm" name="f" action="/s">
      <span class="soutu-btn"></span>
        <input id="kw" class="s_ipt" name="wd" value="" maxlength="255" autocomplete="off">
    </form>
    <a class="mnav" href="http://news.baidu.com" name=
  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值