gpt4 book ai didi

java - 如何使用java从给定的url中获取基本url

转载 作者:搜寻专家 更新时间:2023-10-30 21:00:09 26 4
gpt4 key购买 nike

我正在尝试使用 java 获取基本 URL。我在我的代码中使用了 jtidy 解析器来获取标题。我正在使用 jtidy 正确获取标题,但我没有从给定的 URL 获取基本 url。

我有一些 URL 作为输入:

String s1 = "http://staff.unak.is/andy/GameProgramming0910/new_page_2.htm";
String s2 = "http://www.complex.com/pop-culture/2011/04/10-hottest-women-in-fast-and-furious-movies";

从第一个字符串中,我想获取 "http://staff.unak.is/andy/GameProgramming0910/" 作为基本 URL,从第二个字符串中,我想要 “http://www.complex.com/” 作为基本 URL。

我正在使用代码:

URL url = new URL(s1);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream in = conn.getInputStream();
Document doc = new Tidy().parseDOM(in, null);
String titleText = doc.getElementsByTagName("title").item(0).getFirstChild()
.getNodeValue();

我正在获取 titletext,但请告诉我如何从上面给定的 URL 获取基本 URL?

最佳答案

尝试使用 java.net.URL 类,它将帮助您:

对于第二种情况,它更容易,你可以使用新的 URL(s2).getHost();

对于第一种情况,您可以获取主机并使用 getFile() 方法,并删除最后一个斜杠 ("/") 之后的字符串。类似于:(代码未测试)

URL url = new URL(s1);
String path = url.getFile().substring(0, url.getFile().lastIndexOf('/'));
String base = url.getProtocol() + "://" + url.getHost() + path;

关于java - 如何使用java从给定的url中获取基本url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6013628/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com