2015-09-06 49 views
0

我使用JSOUP过滤链接出html身体。Jsoup为不同的网站选择链接

这样一个网页:https://en.wikipedia.org/wiki/Cloud_computing

我要过滤链接,如: https://en.wikipedia.org/wiki/Light

哈希标签链接en.wikipedia.org/wiki/Cloud_computing#cite_note-1

我尝试doc.select("a[href*=#]").remove();它工作得很好,在HTML页面哈希标记链接src:<a href="#cite_ref-1">

但是当我使用doc.select("a[href]*=/]").remove();其中l油墨页面html src

<a href="/wiki/Light">CH</a> 

但仍有尚未过滤的链接。这怎么可能?

+0

如果我的回答解决你所描述的问题,那么你就应该接受它,以便该线程可以考虑关闭。如果没有,那么请提供一些反馈,以便我可以更新我的答案 – alkis

+0

非常感谢我检查你的答案再次与我的代码,它的作品。 – Rehama

回答

0

你有一个错字。

doc.select("a[href]*=/]").remove(); 

它应该是这样的

doc.select("a[href*=/]").remove(); 

但这将删除含/的每一个环节。 这是你想要的,还是你想删除每个以/开头的链接。 在这种情况下,你需要这个

doc.select("a[href^=/]").remove(); 
+0

@ alkis我试过doc.select(“a [href^=//”“)。删除每个以/开头的链接,但我得到了这些异常org.jsoup.UnsupportedMimeTypeException:未处理的内容类型。必须是text/*,application/xml或application/xhtml + xml。 Mimetype = application/pdf,URL = http://france.emc.com/collat​​eral/white-paper/h12825-cloud-foundry-paas-vblock-wp.pdf – Rehama

+0

这是一个与您发布的网址完全不同的网址你的问题。此外,这个问题与您在问题中提到的问题完全不同。请更新您的问题。 – alkis