
网络爬虫
虚拟身份
要有自制力和向上心。
展开
-
Jsoup文档--从文件中加载
从文件中加载Document问题有一个包含HTML的文件保存在硬盘中,想要加载解析,可能修改或从中提取数据。解决方案使用Jsoup.parse(File in, String charsetName, String baseUri);方法:File input = new File("/tmp/input.html");Document doc = Jsoup.parse(input,...翻译 2018-09-30 23:26:42 · 534 阅读 · 0 评论 -
Jsoup文档--解析body片段
解析body片段问题有一个body HTML片段(e.g. 包含一些p标签的div;一个不完整的HTML文档)需要解析。翻译 2018-09-29 22:22:44 · 1307 阅读 · 0 评论 -
Jsoup文档--解析String
从String中解析文档问题Java String对象存有HTML,希望解析该HTML获取其内容,或确保它有良好的格式,或修改它。这个String对象可能来自于用户输入、文件或web中。解决方案使用静态方法Jsoup.parse(String html),或Jsoup.parse(String html, String baseUri)。String html = "<html&g...翻译 2018-09-28 22:45:38 · 653 阅读 · 0 评论 -
Jsoup文档——介绍
用于自我学习,翻译自https://jsoup.org/翻译 2018-09-27 23:19:47 · 240 阅读 · 0 评论 -
Jsoup文档--HTML清理
清理不受信HTML(防止XSS攻击)问题在网站上允许不受信的用户提供HTML作为输出(e.g. 提交评论)。需要清理该HTML来避免跨站点脚本(XSS)攻击。解决方案使用jsoup提供的HTML Cleanner和一个指定Whitelist白名单的配置。String unsafe = "<p><a href='http://example.com/' onclick='...翻译 2018-10-02 15:26:31 · 477 阅读 · 0 评论 -
Jsoup文档--修改数据(设置元素的文本内容)
设置元素的文本内容问题需要修改HTML文档中的文本内容。解决方案使用Element中关于文本的setter方法:Element div = doc.select("div").first(); // <div></div>div.text("five > four"); // <div>five &gt; four</div&am翻译 2018-10-02 12:09:55 · 1382 阅读 · 0 评论 -
Jsoup文档--修改数据(设置元素包含的HTML)
设置元素包含的HTML问题需要修改一个元素的HTML内容。解决方案使用Element中HTML setter方法。Element div = doc.select("div").first(); // <div></div>div.html("<p>lorem ipsum</p>"); // <div><翻译 2018-10-02 11:32:06 · 1283 阅读 · 0 评论 -
Jsoup文档--修改数据(设置属性值)
设置属性值问题解析完文档,在将其保存到硬盘或作为HTTP响应发送之前想要更改其中一些属性值。解决方案使用设置属性的方法Element.attr(String key, String value),Elements.attr(String key, String value)如果需要修改一个元素的class属性,可以使用Element.addClass(String className)...翻译 2018-10-02 11:15:58 · 1823 阅读 · 0 评论 -
Jsoup文档--提取数据(示例程序:获取链接)
示例程序:获取链接这个示例程序演示了如何从URL获取页面;提取链接(<a></a>)、图像和其他指向(pointers);并检查它们的地址(URLs)和文本。指定要获取的URL(目标源)作为程序的唯一参数。package org.jsoup.examples;import org.jsoup.Jsoup;import org.jsoup.helper.Valid...翻译 2018-10-01 22:31:04 · 214 阅读 · 0 评论 -
Jsoup文档--提取数据(使用URLs)
使用URLs问题需要将一个HTML文档中包含的相对路径的解析为绝对路径。解决方案确保在解析文档时指定了base URI,(从URL加载时是隐含的)。使用abs:属性前缀从属性中解析绝对路径。Document doc = Jsoup.connect("http://jsoup.org").get();Element link = doc.select("a").first();...翻译 2018-10-01 21:22:24 · 266 阅读 · 0 评论 -
Jsoup文档--提取数据(元素中提取属性、文本和HTML)
元素中提取属性、文本和HTML问题完成解析文档并找到一些元素后,想要从这些元素中获取数据。解决方案获取属性值:使用Node.attr(String key)方法获取文本:使用Element.text()获取HTML:使用Element.html(),或合理使用Node.outerHtml()String html = "&lt;p&gt;An &lt;a href='http:/...翻译 2018-10-01 20:45:58 · 4188 阅读 · 0 评论 -
Jsoup文档--提取数据(使用选择器语法查找元素)
使用选择器语法查找元素问题想要使用类似于CSS或jQuery的选择器语法查找和操作元素。解决方案使用Element.select(String selector)和Elements.select(String selector)方法:File input = new File("/temp/input.html");Document doc = Jsoup.parse(input, "...翻译 2018-10-01 18:41:14 · 592 阅读 · 0 评论 -
Jsoup文档--提取数据(使用DOM方法遍历文档)
使用DOM方法遍历文档问题想要从HTML文档中提取数据(通常是了解该HTML文档结构的)。解决方案在将HTML解析成Document后使用类似于操作DOM的方法。File input = new File("/tmp/input.html");Document doc = Jsoup.parse(input, "UTF-8", "http://example.com/");翻译 2018-10-01 15:36:02 · 592 阅读 · 0 评论 -
Jsoup文档--使用URL加载Document
使用URL加载Document问题需要从网络中获取并解析HTML文档,并在其中查找数据(屏幕抓取)。解决方案使用Jsoup.connect(String url)方法:Document doc = Jsoup.connect("http://example.com/").get();String title = doc.title();描述connect(String url)方...翻译 2018-09-29 22:53:03 · 534 阅读 · 0 评论