java - 从java中的网页检索URL

标签 java http web

我有最基本的 java 代码来执行 http 请求,它工作正常。我请求数据,然后返回大量 html。我想从该页面检索所有 url 并列出它们。对于一个简单的第一次测试,我让它看起来像这样:

int b = line.indexOf("http://",lastE);
int e = line.indexOf("\"", b);

这是有效的,但正如您想象的那样,它很糟糕,并且仅在 80% 的情况下有效。我自己能想出的唯一选择听起来又慢又蠢。所以我的问题非常多,我从哪里去

String html

List<Url> 

?

最佳答案

Pattern p = Pattern.compile("http://[\w^\"]++");
Matcher m = p.matcher(yourFetchedHtmlString);
while (m.find()) {
   nextUrl=m.group();//Do whatever you want with it
}

您可能还需要调整正则表达式,因为我只是在没有测试的情况下编写的。这应该是一种非常快速的获取 url 的方法。

关于java - 从java中的网页检索URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7397831/

相关文章:

html - CSS 表格单元格透明度

php - 如何实现在播放实际视频之前显示的YouTube和Netflix等视频广告

Java 使用 JDBC 连接到 Postgres - SQLException

java - 将字符串转换为 double ?

java - 如何强制spring(boot)使用ehcache 3

java - java.lang.UnsupportedOperationException 的 HTTP 501

Java HttpPost 正文 Apache 4.3.2

java - 如何在 Android 中创建有用的工具提示

javascript - 股票市场 API Node.JS

java - 无法解析 WSDL - 没有这样的文件或目录