码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • HtmlUnit、Jsoup、webmagic基本介绍


    HtmlUnit官网:https://htmlunit.sourceforge.io/
    Jsoup官网:https://jsoup.org/cookbook/cleaning-html/safelist-sanitizer
    Selenium官网 https://www.selenium.dev/zh-cn/documentation/webdriver/getting_started/

    什么是Jsoup

    在这里插入图片描述
    可以抓取页面,但是更多的时候我们用来解析HTML。

    Document doc = Jsoup.connect("https://en.wikipedia.org/").get();
    log(doc.title());
    Elements newsHeadlines = doc.select("#mp-itn b a");
    for (Element headline : newsHeadlines) {
      log("%s\n\t%s", 
        headline.attr("title"), headline.absUrl("href"));
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    什么是HtmlUnit

    在这里插入图片描述
    是一个无GUI浏览器,允许您调用页面、填写表单、单击链接。
    可以用作自动化测试、爬虫等,可以抓取动态页面,但是对js和css支持不好。

    // 创建一个web客户端
    final WebClient webClient = new WebClient(BrowserVersion.CHROME);
    // 不支持js
    webClient.getOptions().setJavaScriptEnabled(false);
    // 抓取页面
    final HtmlPage page = webClient.getPage("https://www.cnblogs.com/starzhai/p/14106770.html");
    // 分析html
    System.out.println(page.getTitleText());
    Object firstByXPath = page.getFirstByXPath("//*[@id=\"cnblogs_post_body\"]/p[15]");
    System.out.println(firstByXPath);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    Selenium

    参考 https://www.cnblogs.com/tester-ggf/p/12602211.html#2257972919
    Selenium是一系列基于Web的自动化工具,提供一套测试函数,用于支持Web自动化测试。函数非常灵活,能够完成界面元素定位、窗口跳转、结果比较。

    	@Test
        public void testChromeSearch() throws InterruptedException {
            // Optional. If not specified, WebDriver searches the PATH for chromedriver.
            System.setProperty("webdriver.chrome.driver", "E:\\doc\\chromedriver_win32\\driver\\chromedriver.exe");
            // 1.创建webdriver驱动
            WebDriver driver = new ChromeDriver();
            // 2.打开百度首页
            driver.get("https://www.baidu.com");
            // 3.获取输入框,输入selenium
            driver.findElement(By.id("kw")).sendKeys("selenium");
            // 4.获取“百度一下”按钮,进行搜索
            driver.findElement(By.id("su")).click();
            // 5.退出浏览器
        }
    
        @Test
        public void testOperadriverSearch() throws InterruptedException {
            // Optional. If not specified, WebDriver searches the PATH for chromedriver.
            System.setProperty("webdriver.opera.driver", "E:\\doc\\driver\\operadriver.exe");
            // 1.创建webdriver驱动
            WebDriver driver = new OperaDriver();
            // 2.打开百度首页
            driver.get("https://www.baidu.com");
            // 3.获取输入框,输入selenium
            driver.findElement(By.id("kw")).sendKeys("selenium");
            // 4.获取“百度一下”按钮,进行搜索
            driver.findElement(By.id("su")).click();
            // 5.退出浏览器
        }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
  • 相关阅读:
    利用STM32CubeMX软件生成USB_HOST_HID连接鼠标和键盘扫码枪
    煤矿皮带运行视频监控系统
    python3中split()函数和int()函数的坑
    Python数据分析-Numpy
    【FreeSwitch开发实践】FreeSwitch常用知识点总结
    电脑照片如何打包发送微信?三种方法随心选!
    Visual Studio(VS)C++项目 管理第三方依赖库和目录设置
    嵌入式Python高级
    第三版全球干旱指数和潜在蒸散数据发布
    用html画一个四叶草
  • 原文地址:https://blog.csdn.net/qq_35010942/article/details/127423090
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号