【问题标题】:Get mp3/pdf files using JSoup in Groovy在 Groovy 中使用 JSoup 获取 mp3/pdf 文件
【发布时间】:2014-07-07 15:39:41
【问题描述】:

我正在开发一个使用 crawler4j 和 Jsoup 来抓取网络的应用程序。我需要使用 JSoup 解析网页并检查它是否有 zip 文件、pdf/doc 和 mp3/mov 文件可作为下载资源。

对于 zip 文件,我做了以下操作:

Elements zip = doc.select("a[href\$=.zip]")
        println "No of zip files is " + zip.size() 

此代码正确地告诉我一个页面中有多少个 zip 文件。我不确定如何使用 JSoup 计算所有音频文件或文档文件。任何帮助表示赞赏。谢谢。

【问题讨论】:

    标签: grails groovy jsoup crawler4j


    【解决方案1】:

    使用相同的方法,我怀疑它会是这样的:

    Elements docs = doc.select("a[href\$=.doc]")
            println "No of doc files is " + docs.size() 
    
    Elements mp3s = doc.select("a[href\$=.mp3]")
            println "No of mp3 files is " + mp3s.size() 
    

    实际上它只是一个选择器,其中 href 属性以某个文件扩展名结尾。

    【讨论】:

    • 谢谢。我是这么认为的,但是不同的网页使用不同的方法来嵌入音频文件这一事实让我感到困扰。例如,我检查了这个页面:mp3.com/top-downloads,它有用于嵌入 mp3 文件的 标签。你认为这不会导致错误计数吗?
    • 是的,它肯定会。例如,您需要为 a[relSong\$=.mp3] 使用不同的选择器。
    • 这样,人们可以通过多种方式嵌入 mp3 和 doc 文件。有没有使用 Jsoup 的通用方法,我可以在不深入研究单个嵌入样式的情况下提取正确的信息?
    猜你喜欢
    • 1970-01-01
    • 2015-04-30
    • 1970-01-01
    • 1970-01-01
    • 2014-01-19
    • 1970-01-01
    • 2017-10-16
    • 2013-09-07
    • 1970-01-01
    相关资源
    最近更新 更多