相关疑难解决方法(0)

如何使用java.net.URLConnection来触发和处理HTTP请求

java.net.URLConnection在这里经常询问使用情况,Oracle教程对此非常简洁.

该教程基本上只显示了如何触发GET请求并读取响应.它没有解释如何使用它来执行POST请求,设置请求标头,读取响应标头,处理cookie,提交HTML表单,上传文件等.

那么,我如何使用java.net.URLConnection触发和处理"高级"HTTP请求?

java http urlconnection httprequest httpurlconnection

1903
推荐指数
11
解决办法
100万
查看次数

从String中删除HTML标记

有没有一种从Java字符串中删除HTML的好方法?一个简单的正则表达式

 replaceAll("\\<.*?>","") 
Run Code Online (Sandbox Code Playgroud)

会工作,但&amp;不会正确转换,两个尖括号之间的非HTML将被删除(即.*?正则表达式将消失).

html java parsing

408
推荐指数
18
解决办法
44万
查看次数

你如何以编程方式下载Java网页

我希望能够获取一个网页的html并将其保存到一个String,所以我可以对它进行一些处理.另外,我如何处理各种类型的压缩.

我将如何使用Java进行此操作?

java compression http

116
推荐指数
5
解决办法
19万
查看次数

如何在Google Programmatically Java API中搜索

有没有人知道是否以及如何以编程方式搜索Google - 特别是如果有Java API?

java google-search-api

104
推荐指数
3
解决办法
11万
查看次数

如何在Java中使用cURL?

我是java的新手,想在java中使用curl.我的问题是我在java中内置的curl,或者我必须从任何第三方源安装它以与Java一起使用.如果是这样,如何在java中安装curl.我已经谷歌搜索了很长时间,但没有找到任何帮助.希望任何人都可以帮助我.

提前致谢.

java curl

86
推荐指数
2
解决办法
22万
查看次数

Java HTML解析

我正在开发一个从网站上删除数据的应用程序,我想知道如何获取数据.具体来说,我需要包含在许多使用特定CSS类的div标签中的数据 - 目前(用于测试目的)我只是在检查

div class = "classname"
Run Code Online (Sandbox Code Playgroud)

在HTML的每一行 - 这是有效的,但我不禁觉得那里有更好的解决方案.

有没有什么好方法我可以给一个类一行HTML并有一些很好的方法,如:

boolean usesClass(String CSSClassname);
String getText();
String getLink();
Run Code Online (Sandbox Code Playgroud)

html java parsing web-scraping

52
推荐指数
7
解决办法
11万
查看次数

如何"扫描"一个网站(或页面)的信息,并将其带入我的程序?

好吧,我正在试图弄清楚如何从网页中提取信息,并将其带入我的程序(用Java).

例如,如果我知道我想要信息的确切页面,为了简单起见,Best Buy项目页面,我如何从该页面获得我需要的相应信息?喜欢标题,价格,描述?

这个过程甚至会被称为什么?我不知道甚至开始研究这个.

编辑:好的,我正在为JSoup(由BalusC发布的那个)运行测试,但我一直收到这个错误:

Exception in thread "main" java.lang.NoSuchMethodError: java.util.LinkedList.peekFirst()Ljava/lang/Object;
at org.jsoup.parser.TokenQueue.consumeWord(TokenQueue.java:209)
at org.jsoup.parser.Parser.parseStartTag(Parser.java:117)
at org.jsoup.parser.Parser.parse(Parser.java:76)
at org.jsoup.parser.Parser.parse(Parser.java:51)
at org.jsoup.Jsoup.parse(Jsoup.java:28)
at org.jsoup.Jsoup.parse(Jsoup.java:56)
at test.main(test.java:12)
Run Code Online (Sandbox Code Playgroud)

我有Apache Commons

html java web-scraping jsoup

51
推荐指数
3
解决办法
9万
查看次数

TagSoup与Jsoup vs. HTML Parser vs. HotSax vs.

丰富的HTML解析器可供选择(并坚持使用)令人难以置信:

http://java-source.net/open-source/html-parsers

如何选择最符合以下要求的产品:

  1. 成熟(比其他人更少的错误)
  2. 生活和呼吸(即维持)
  3. 快速且资源效率高(旨在在Android上运行)

根据您的经验,您会推荐哪种HTML解析器(满足上述要求)以及原因?

java android html-parsing

40
推荐指数
1
解决办法
2万
查看次数

使用XPath包含Java中的HTML

我正在使用java程序中的XPath从HTML页面中抓取值来获取特定标记,偶尔使用正则表达式来清理我收到的数据.

经过一些研究,我登陆HTML Cleaner(http://htmlcleaner.sourceforge.net/)作为将原始HTML解析为良好XML格式的最可靠方法.但是,HTML Cleaner只支持XPath 1.0,我发现自己需要像'contains'这样的功能.例如,在这段XML中:

<div>
  <td id='1234 foo 5678'>Hello</td>
</div>
Run Code Online (Sandbox Code Playgroud)

我希望能够通过以下XPath获取文本"Hello":

//div/td[contains(@id, 'foo')]/text()
Run Code Online (Sandbox Code Playgroud)

有没有办法获得这个功能?我有几个想法,但如果我不需要,我宁愿不重新发明轮子:

  • 如果有办法调用HTML Cleaner的evaluateXPath并返回TagNode(我还没有找到),我可以在返回的TagNode上使用XML序列化程序并将XPath链接在一起以实现所需的功能.
  • 我可以使用HTML Cleaner来清理XML,将其序列化为字符串,并将其与另一个XPath库一起使用,但我找不到适用于字符串的优秀java XPath评估程序.
  • 使用像getElementsByAttValue这样的TagNode函数,我基本上可以重新创建XPath评估并使用String.contains插入包含功能

简短的问题:有没有办法在现有的Java库中使用HTML包含HTML?

java xpath html-parsing

21
推荐指数
1
解决办法
2万
查看次数

如何仅从HTML页面中提取主要文本内容?

更新

Boilerpipe似乎工作得很好,但我意识到我不仅需要主要内容,因为许多页面没有文章,只有一些简短的描述链接到整个文本(这在新闻门户网站中很常见)和我不想丢弃这些短文.

因此,如果API执行此操作,请获取不同的文本部分/块以不同于单个文本的某种方式分割每个文本部分(仅在一个文本中都没有用),请报告.


问题

我从随机网站下载了一些页面,现在我想分析页面的文本内容.

问题是网页有很多内容,如菜单,宣传,横幅等.

我想尝试排除与页面内容无关的所有内容.

以此页面为例,我不希望上面的菜单既不是页脚中的链接.

重要提示:所有页面都是HTML,是来自各种不同网站的页面.我需要建议如何排除这些内容.

目前,我认为从HTML中删除"menu"和"banner"类中的内容以及看起来像正确名称(第一个大写字母)的连续单词.

解决方案可以基于文本内容(没有HTML标记)或HTML内容(使用HTML标记)

编辑:我想在我的Java代码中执行此操作,而不是外部应用程序(如果可以的话).

我尝试了解析此问题中描述的HTML内容的方法:https://stackoverflow.com/questions/7035150/how-to-traverse-the-dom-tree-using-jsoup-doing-some-content-filtering

html java information-retrieval jsoup

19
推荐指数
3
解决办法
2万
查看次数