1.版本

selenium

     <!--selenium--><dependency><groupId>io.github.bonigarcia</groupId><artifactId>webdrivermanager</artifactId><version>5.0.3</version></dependency><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-java</artifactId><version>3.141.59</version></dependency><dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-api</artifactId><version>3.141.59</version></dependency>

geckodriver版本:0.29.1

安装详见:selenium java安装运行_leadseczgw01的博客-CSDN博客

2.实现百度搜索

    public String baiduSearch(String profileName, String searchKeyword) throws Exception{WebDriver driver = getWebDriver(profileName);// 打开网址driver.get("https://www.baidu.com/");Thread.sleep(1000 * 3);SeleniumFirefoxUtil.detectAndCloseLoginTip(driver); // 探测并关闭登录提示// 找到搜索文本框WebElement webElement = driver.findElement(By.id("kw"));webElement.sendKeys(searchKeyword);// 找到搜索点击按钮,并点击webElement = driver.findElement(By.id("su"));webElement.click();Thread.sleep(1000 * 3);webElement = driver.findElement(By.xpath("//div[@id='tsn_inner']/div[2]/span"));String btnText = webElement.getText();logger.debug("搜索结果:{}!", btnText);// 退出浏览器driver.quit();return btnText;}private WebDriver getWebDriver(String profileName) {try{// 指定火狐浏览器安装位置System.setProperty("webdriver.firefox.bin", firefoxBin);// 指定selenium 火狐浏览器驱动程序位置System.setProperty("webdriver.gecko.driver", driverPath);// 获取火狐浏览器驱动对象FirefoxOptions firefoxOptions = new FirefoxOptions();firefoxOptions.setHeadless(true);firefoxOptions.addArguments("--no-sandbox");firefoxOptions.addArguments("--disable-gpu");firefoxOptions.addArguments("--disable-dev-shm-usage");if(StringUtils.isNotBlank(profileName)){String profilePath = firefoxProfileHome + File.separator + profileName;logger.debug("profilePath:{}", profilePath);File profileFile = new File(profilePath);if(!profileFile.exists()){logger.error("profilePath:{}不存在或权限不足!", profilePath);}else{FirefoxProfile profile = new FirefoxProfile(profileFile);firefoxOptions.setProfile(profile);}}FirefoxDriver firefoxDriver = new FirefoxDriver(firefoxOptions);firefoxDriver.manage().timeouts().implicitlyWait(60, TimeUnit.SECONDS);firefoxDriver.manage().timeouts().pageLoadTimeout(60, TimeUnit.SECONDS);return firefoxDriver;}catch (Exception e){logger.error("获取webDriver异常!", e);}return null;}

Selenium+java+firefox实现百度搜索。相关推荐

  1. java抓取百度搜索结果_java实现抓取百度对某站点搜索结果

    htmlunit 是一款开源的java 页面分析工具,读取页面后,可以有效的使用htmlunit分析页面上的内容.项目可以模拟浏览器运行,被誉为java浏览器的开源实现.这个没有界面的浏览器,运行速度 ...

  2. 给ubuntu的firefox添加“百度搜索”

    首先使用firefox打开百度主页www.baidu.com,在搜索栏的放大镜上出现一个+标志,点击此标志就可以添加"百度搜索". 在preference中设定默认搜索引擎为&qu ...

  3. java 访问百度_使用Java调用百度搜索

    如何利用Java来调用百度搜索,更多细节请到github上查看search 自己没搜索引擎,又想要大规模的数据源,怎么办?可以对百度搜索善加利用,以小搏大,站在巨人的肩膀上.有很多的应用场景可以很巧妙 ...

  4. selenium java安装运行

    目录 1.安装 2.java maven依赖 3.入门 4.centos安装selenium 4.1 安装firefox 4.2安装xvfb 4.3 安装geckodriver 附录A 浏览器无头模式 ...

  5. selenium驱动Firefox模拟浏览器操作

    1.安装火狐浏览器及selenium IDE插件 在官网直接下载火狐浏览器并安装,安装后在"附加组件"中搜索selenium IDE,然后添加到Firefox,如下图: 图1 图2 ...

  6. python selenium 爬虫 网站seo刷流量 第一篇:百度搜索

    做SEO的同学和各位站长都知道,网站的原创内容在被大量收录后,适当的做一点白帽的刷流量,对于网站关键词排名提升还是有些好处的,本篇就先介绍一个用百度搜索来刷流量的简单Demo. 一.Demo系统设计思 ...

  7. Java爬虫Selenium+Java+ChromeDriver【抓取百度信息】

    一.爬虫工具 selenium 是一个模拟浏览器操作的工具,背后有google 维护源代码,支持全部主流浏览器,支持主流的编程语言,包括:java,Python,C#,PHP,Ruby,等,在本项目上 ...

  8. java调用百度搜索_Java爬虫怎么调用百度搜索引擎,对关键字的网页爬取?

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package com.wjd.baidukey.crawler; import java.io.ByteArrayInputStream; import ...

  9. Python+selenium+PhantomJS获取百度搜索结果真实链接地址

    祝愿所有参加高考的孩子们都能超水平发挥,考出好成绩,考上理想的学校!也希望你们考上大学之后仍然保持高考前的学习劲头! ===========正文============= 问题描述:在爬取百度搜索结果 ...

最新文章

  1. 2021年大数据常用语言Scala(二十):函数式编程 介绍
  2. oracle 四分位函数,Oracle分析函数四——函数RANK,DENSE_RANK,FIRST,LAST…
  3. 08-数组中常用的属性及方法
  4. 剑灵系统推荐加点_剑灵重制修炼系统 无定式加点打造自我风格
  5. 30天打造专业红客七
  6. 初识JAVA--foreach语句的应用
  7. 盖茨庆祝万维网诞生30周年 庆幸自己有机会影响数字革命
  8. php和ajax实现聊天功能,怎么在PHP项目中使用jquery与ajax实现一个即时聊天功能
  9. ABViewer免费汉化下载注册地址图形查看器教程功能介绍
  10. DataWorks 数据质量V2.3版本发布
  11. QDialog之屏蔽Esc键
  12. python使用ip代理抓取网页
  13. Ubuntu中推荐使用的读代码软件
  14. mac brew加速
  15. 手机射频电路全面解析
  16. oracle 生成随机姓名_Oracle生成随机日期时间
  17. oracle update exsits,Oracle 11g 递归+ exists执行计划的改变
  18. 马克思主义基本原理概论-练习题带答案
  19. 3.2.2对中文的考察2
  20. Python-深度学习-Keras 简介

热门文章

  1. as死机了怎么办_电脑老出现Dllc:windowssystem32asadhip.dll而且老死机怎么处理、高手求救...
  2. channelsftp 上传文件为空_文件上传踩坑记及文件清理原理探究
  3. jmeter 脚本 压测
  4. eplan怎样创建和修改图框_EPLAN P8项目创建
  5. 使用阿里云开放搜索服务快速搭建资源搜索网站
  6. 星际争霸2 AI 强化学习环境部署
  7. 微信小程序云开发框架
  8. C语言标准库函数qsort( )——数据排序
  9. 菲律宾海外漫游-介绍
  10. 转述稻盛和夫先生的“六项精进”