gpt4 book ai didi

java - Jsoup - 如何抓取当前播放歌曲的广播网站?

转载 作者:行者123 更新时间:2023-12-02 11:25:15 24 4
gpt4 key购买 nike

我正在使用 jsoup 制作一个程序来抓取某个广播网站当前正在播放的歌曲和艺术家。我已经按照本教程进行操作:https://www.youtube.com/watch?v=C1b74N1rgQQ但无法从网站获取正确的数据。

我想访问这个电台网站:https://indie88.com/并显示当前正在播放的歌曲(和艺术家)。

这是我到目前为止的代码:

package jsoupTest;

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;

import java.io.IOException;

public class indie88 {

public static void main(String[] args) throws IOException {

Document document = (Document) Jsoup.connect("https://indie88.com/").get();
Element e = document.getElementById("page");
String text = e.getElementsByTag("span").get(2).text();
System.out.println(text);

}

通过运行此代码,我得到“搜索”。我认为它与 .get(2) 或 html 中的“span”标签有关,但我不确定。这是我第一次使用 jsoup,任何建议都会有助于我如何让它显示当前正在播放的歌曲(位于页面顶部)。

另外 - 我如何知道何时使用 getElementsByTag 和 getElementsByClass 等?有没有办法指定使用哪个“span”标签?它似乎没有从正确的地方获取信息。

最佳答案

当您转到https://indie88.com/时使用浏览器,该站点会加载更多文件。您要查找的信息位于 https://indie88.com/wp-content/themes/indie88/inc/streamon.php ,因此为了获得它,请尝试以下操作:

final String url = "https://indie88.com/wp-content/themes/indie88/inc/streamon.php"; 
Document doc = Jsoup.connect(url).get();
System.out.println(doc.body().text());

示例输出是 -

{"artist":"Fountains of Wayne","title":"Stacey's Mom","end":"1522993371.161780"}

现在您可以使用一些 JSON 库或正则表达式来提取艺术家和标题。

关于java - Jsoup - 如何抓取当前播放歌曲的广播网站?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49683659/

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