jsoup

How do I get the html (with js script) of a page using JSOUP

只谈情不闲聊 提交于 2020-12-06 15:06:58
问题 I want to get the html content of a page but am unable to because of the scripts that are in the HTML file. I'm trying to use Jsoup to extract the content. If it helps, this is the link to my issue. JSoup select form returns null Does anyone know how I can achieve this? Thanks. 来源: https://stackoverflow.com/questions/64971866/how-do-i-get-the-html-with-js-script-of-a-page-using-jsoup

Spring Boot 使用 Maven 定制一个 parent 简化开发

余生长醉 提交于 2020-12-04 19:24:27
1/ 场景 有很多小应用,有一些公共的特点,比如说都依赖了spring-boot、log4j2、lombok、fastjson等等,为了方便开发,可以使用Maven定制一个parent来简化开发,统一管理第三方依赖的版本。(为后续的微服务做准备哦!) 2/ 构建 parent 2.1. 新建一个Maven工程,any-root。 2.2. 修改pom.xml,添加父工程的依赖,基本上子工程都会用到这些依赖。 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.ictgu</groupId> <artifactId>any-root</artifactId> <version>1.0.RELEASE</version> <packaging>pom<

java爬虫简介(一)->实现数据抓取->httpClient请求接口数据

守給你的承諾、 提交于 2020-11-25 04:28:45
背景 现如今,数据成为了越来越重要的网络资源,越来越有价值。无论是数据的分析还是前后端页面的数据交互,都离不开真实有效的数据。项目开发中数据甲方不可能实时提供,我们只能找到目标网站的数据进行抓取入库。 数据作用 决策支持 提升效益 数据的直接变现方式 数据资源交易 行业报告 广告平台 数据抓取的难点 1、目标网站有反爬取策略 2、目标网站模板会进行定时或实时变动 3、目标网站URL抓取失败 4、IP被封禁 解决办法: 购买代理IP库,随机获取IP进行数据抓取 部署多个应用分别进行抓取,降低单位节点访问的频率 设置每个页面抓取的时间间隔 5、用户登录限制 数据抓取的原理 实质上就是java程序模拟浏览器进行目标网站的访问,无论是请求目标服务器的接口还是请求目标网页内容,都是要在java程序中对数据进行解析。最简单的抓取方式有httpclient请求目标服务器接口,jsoup请求目标页面内容,把请求的数据进行解析然后入库。另外要做好爬取的实时监控,如果URL请求失败3次,就放弃该URL的抓取。 总体架构的设计 1、数据流向 1、确定数据爬取目标 2、数据采集 1、下载数据 2、解析数据 3、存取接入库(database,HDFS) 3、分析查询服务 2、模块划分 1、数据采集模块 2、数据分析模块 3、报表管理模块 4、系统管理与监控模块 3、模块解读 技术选型 数据采集层 JSoup

Spring Boot 使用 Maven 定制一个 parent 简化开发

血红的双手。 提交于 2020-10-15 06:43:02
1/ 场景 有很多小应用,有一些公共的特点,比如说都依赖了spring-boot、log4j2、lombok、fastjson等等,为了方便开发,可以使用Maven定制一个parent来简化开发,统一管理第三方依赖的版本。(为后续的微服务做准备哦!) 2/ 构建 parent 2.1. 新建一个Maven工程,any-root。 2.2. 修改pom.xml,添加父工程的依赖,基本上子工程都会用到这些依赖。 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>cn.ictgu</groupId> <artifactId>any-root</artifactId> <version>1.0.RELEASE</version> <packaging>pom<

用 Java 拿下 HTML,分分钟写个小爬虫!

别等时光非礼了梦想. 提交于 2020-10-12 04:04:04
作者 | HelloGitHub-秦人 来源 | HelloGitHub(ID:GitHub520) HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款开源 Java 版一款网页元素解析框架——jsoup,通过程序自动获取网页数据。 项目源码地址:https://github.com/jhy/jsoup 项目介绍 jsoup 是一款 Java 的 HTML 解析器。可直接解析某个 URL 地址的 HTML 文本内容。它提供了一套很省力的 API,可通过 DOM、CSS 以及类似于 jQuery 选择器的操作方法来取出和操作数据。 jsoup 主要功能: 从一个 URL、文件或字符串中解析 HTML。 使用 DOM 或 CSS 选择器来查找、取出数据。 可操作 HTML 元素、属性、文本。 使用框架 2.1 准备工作 掌握 HTML 语法 Chrome 浏览器调试技巧 掌握开发工具 idea 的基本操作 2.2 学习源码 将项目导入 idea 开发工具,会自动下载 maven 项目需要的依赖。源码的项目结构如下: 快速学习源码是每个程序员必备的技能,我总结了以下几点: 阅读项目 ReadMe 文件,可以快速知道项目是做什么的。 概览项目 pom.xml 文件,了解项目引用了哪些依赖。 查看项目结构、源码目录、测试用例目录,好的项目结构清晰,层次明确。 运行测试用例

Jsoup-爬取实战

烈酒焚心 提交于 2020-10-03 05:54:45
文章目录 Jsoup 导入依赖 获取信息 数据筛选 Jsoup Jsoup 是一款Java 的HTML解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于jQuery的操作方法来取出和操作数据。 爬虫可以用于搜索引擎,内容检索,数据采集分析等,十分强大,不过不要为所欲为( 盗电影、音乐 ),要合理利用。 Jsoup官网 中文文档 导入依赖 不会maven可参考我的另一篇博客 < dependency > < groupId > org.jsoup </ groupId > < artifactId > jsoup </ artifactId > < version > 1.10.2 </ version > </ dependency > 获取信息 以在CSDN搜索jsoup为例,请求该URL,查看你所需信息标签的id或class,用Jsoup返回浏览器Document对象,然后可以用js的方法获取对象和操作。 package com . wzl . utils ; import org . jsoup . Jsoup ; import org . jsoup . nodes . Document ; import org . jsoup . nodes . Element ; import org . jsoup .

[ASP.NET]强大的网页处理类NSoup

徘徊边缘 提交于 2020-08-20 05:25:07
我们如果在项目中碰到要处理HTML,如果是.NET程序员的话,强烈推荐使用NSoup,不然的话截取字符串是在是太痛苦了。NSoup是一个开源框架,是JSoup的.NET移植版本,使用方法基本一致!NSoup 点击下载 获取网页的html代码 处理网页html [csharp] view plain copy print ? <span style= "font-family: Arial, Helvetica, sans-serif;" >NSoup.Nodes.Document doc = NSoup.NSoupClient.Connect( "http://blog.csdn.net/dingxiaowie2013" ).Get();</span> 或者是自定义html,生成html页面 [csharp] view plain copy print ? NSoup.Nodes.Document doc = NSoup.NSoupClient.Parse(HtmlString); 但是很遗憾NSoup默认的是UTF-8,处理中文会有乱码(对于编码是UTF-8自然会正常,但是有些是GB2312的就可能有乱码) 解决NSoup解析HTML乱码的办法 1.下载网页源代码再处理 [csharp] view plain copy print ? //下载网页源代码 WebClient