1. 程式人生 > >爬蟲遇到路徑轉換的解決方案

爬蟲遇到路徑轉換的解決方案

				String href = n.attr("abs:href");//jsoup自帶的路徑轉換方法,有的時候行不通
				if("".equals(href)) {
					href = n.attr("href");
					if (href.indexOf("http") < 0) {
						href = getAbsoluteURL(url, href);
					}
				}
				

	@SuppressWarnings("finally")
	public static String getAbsoluteURL(String baseURI, String relativePath) {
		String abURL = null;
		try {
			URI base = new URI(baseURI);// 基本網頁URI
			URI abs = base.resolve(relativePath);// 解析於上述網頁的相對URL,得到絕對URI
			URL absURL = abs.toURL();// 轉成URL
			abURL = absURL.toString();
		} catch (MalformedURLException e) {
			e.printStackTrace();
		} catch (URISyntaxException e) {
			e.printStackTrace();
		} finally {
			return abURL;
		}
	}