java - Jsoup,忽略带有 javascript 弹出窗口的链接 <a href ="javascript:OpenPopup()">

标签 java jsoup

我使用 jsoup 解析一些页面的链接,然后使用 httpclient 测试链接以查看它们是否正常工作。我的页面上的一些链接是 ,我想忽略这些。

当我的代码尝试从中获取链接时,它返回空白。我可以从支票中排除所有空白,但有时在我的网站上创建的链接可能是空白的(偶然),我想捕获这些链接以便修复。

所以我想要做的是能够识别链接何时是 javascript 弹出窗口,这样我就可以忽略这个特定链接上的链接测试。我解析链接的代码如下:

private void setLinks(){
    String link;
    try {
        Document doc = response.parse();

        Elements element = doc.select(htmlElementTarget+" a[href]");
        for (Element page : element){
            link = page.absUrl("href");
            if (validateUrl(link)){
                linksText.add(page.text());
                links.add(link);
            }
        }
    } catch (IOException e) {
        System.out.println(e);
    }
}

欢迎对我的代码提出任何其他批评

最佳答案

如果 href 始终为 javascript:OpenPopup(),您可以添加另一个 if 语句。

if (page.attr("href").equals("javascript:OpenPopup()")) {
    if (validateUrl(link) {
    }
}

注意...代码未经过编译测试。

关于java - Jsoup,忽略带有 javascript 弹出窗口的链接 <a href ="javascript:OpenPopup()">,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10703861/

相关文章:

java - 更新和渲染项目符号

java - JSOUP 选择具有特定 ID 的 <div>

java - 使用jsoup解析URL时出现404错误

java - 读取 anchor JSoup 中的数据

java - 我的微调器在添加从 firebase 数据库中选择的多个值时被覆盖

Java:在没有重复代码的情况下处理多个复杂接口(interface)

java - 无法超越 while 循环

java - 在 Hadoop 映射器类中获取输入路径

java - JSoup 解析 &lt;script&gt; 标签

java - 使用 jsoup 实例化标签对象