1. 首页
  2. 软件开发
  3. Selenium获取网页内容

Selenium获取网页内容

  • 发布于 2024-08-19
  • 0 次阅读

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


文章目录



执行程序前请先配置驱动:
关于Java selenium使用前浏览器驱动的下载和环境变量的配置
关于Selenium自动化测试工具的Java实现详情请参考文章:
如何查看页面对应的Selenium定位参数
Java实现 selenium Web自动化测试(简单篇)
Java实现 selenium Web自动化测试(详细篇)


  1. 创建输出页面对象

将WebDriver对象转为输出页对象类型

        //创建打印对象
        PrintsPage printer = (PrintsPage) webDriver;
  1. 创建输出参数对象

输出参数对象创建,用于配置参数

        //创建打印参数对象
        PrintOptions printOptions = new PrintOptions();
  1. 范围配置

配置输出页内容的范围

        //设置参数
        printOptions.setPageRanges("1-2");
  1. 创建PDF对象

创建pdf对象用于打印输出页范围的内容

        //创建pdf对象
        Pdf pdf = printer.print(printOptions);
  1. 获取PDF内容

将pdf的内容获取转为字符串

        //获取pdf中的内容
        String content = pdf.getContent();
  1. 完整代码

PrintPageTest.java

package com.libai.test.selenium.chrome;

import org.openqa.selenium.*;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.chrome.ChromeOptions;
import org.openqa.selenium.print.PrintOptions;

/**
 * @ClassDescription: 打印网页内容
 * @JdkVersion: 1.8
 * @Author: 李白
 * @Created: 2024/5/8 21:41
 */
public class PrintPageTest {
   
    public static void main(String[] args) throws Exception {
   
        //指定驱动,第一个参数为驱动名称,不同浏览器的参数名称不一样,请根据浏览器查询到对应的浏览器参数名,第二个参数为驱动文件路径,即驱动完整文件路径
        System.setProperty("webdriver.chrome.driver", "D:\\JavaSoftWares\\Google\\driver\\chromedriver-win64\\chromedriver.exe");
        // 谷歌驱动
        ChromeOptions cops = new ChromeOptions();
        // 允许所有请求
        cops.addArguments("--remote-allow-origins=*");
        //默认设置开始打开网页时窗口最大化
        cops.addArguments("--start-maximized");
        //创建驱动对象
        WebDriver webDriver = new ChromeDriver(cops);
        // 启动需要打开的网页
        webDriver.get("https://www.baidu.com");
        //指定窗口大小--最大化
//        webDriver.manage().window().maximize();

        //创建打印对象
        PrintsPage printer = (PrintsPage) webDriver;

        //创建打印参数对象
        PrintOptions printOptions = new PrintOptions();
        //设置参数
        printOptions.setPageRanges("1-2");
        //创建pdf对象
        Pdf pdf = printer.print(printOptions);
        //获取pdf中的内容
        String content = pdf.getContent();
        System.out.println("\n\n\n\n"+content+"\n\n\n\n");

        Thread.sleep(5000);
        //关闭浏览器
        webDriver.quit();
    }
}


感谢阅读,祝君暴富!

原文链接: https://hanshan.blog.csdn.net//article/details/138635180