虾米音乐java_抓取虾米音乐网站音乐,搜索虾米音乐功能的java实现

news/2024/5/21 1:02:51/文章来源:https://blog.csdn.net/weixin_35615475/article/details/114079036

可以实现和点点网音乐分享功能暂时还没做界面,先留下代码

2a10b82843be4e12db2789b8f06c91be.png

ee0314360844eccc561f72cc083b0a15.png

package com;

/**

* 歌曲实体

* @author hanfei

*

*/

public class Song {

private String title;

private String songUrl;

private String flashUrl;

private String image;

public String getTitle() {

return title;

}

public void setTitle(String title) {

this.title = title;

}

public String getFlashUrl() {

return flashUrl;

}

public void setFlashUrl(String flashUrl) {

this.flashUrl = flashUrl;

}

public void setSongUrl(String songUrl) {

this.songUrl = songUrl;

}

public String getSongUrl() {

return songUrl;

}

public void setImage(String image) {

this.image = image;

}

public String getImage() {

return image;

}

}

import java.io.IOException;

import java.util.ArrayList;

import java.util.List;

import org.jsoup.Jsoup;

import org.jsoup.nodes.Document;

import org.jsoup.nodes.Element;

import org.jsoup.select.Elements;

/**

* 抓取工具类

* @author hanfei

*

*/

public class SongUtil {

/**

* 根据关键词搜索歌曲

*

* @param key

* 关键词

* @return

* @throws IOException

*/

public static List seachXiaMiSongs(String key) throws IOException {

Document doc = Jsoup.connect("http://www.xiami.com/ajax/search-index")

.data("query", "Java").data("key", key)

.userAgent("Mozilla")

.cookie("auth", "token")

.timeout(6000)

.get();

String content = doc.html();

content = content.substring(content.indexOf("

  • ") + 4, content

.indexOf("

"));

doc = Jsoup.parse(content);

System.out.print(doc.html());

Elements links = doc.select("a[href]");

System.out.println("sssssssssss" + links.size());

List list = new ArrayList();

for (Element link : links) {

Song song = new Song();

String linkHref = link.attr("href");

String linkText = link.text();

song.setSongUrl(linkHref);

song.setTitle(linkText);

list.add(song);

System.out.println(linkHref + "---" + linkText);

}

return list;

}

/**

* 获取歌曲的封面图片地址

* @param song

* @return

* @throws IOException

*/

public static Song getXiamiSongDetail(Song song) throws IOException {

Document doc = Jsoup

.connect("http://www.xiami.com" + song.getSongUrl())

.data("query", "Java").userAgent("Mozilla")

.cookie("auth", "token")

.timeout(6000)

.get();

Element e = doc.getElementById("albumCover");

Element img = e.select("img").get(0);

String imagSrc = img.attr("src");

System.out.print(imagSrc);

song.setImage(imagSrc);

return song;

}

/**

* 获取歌曲的播放地址

* @param songUrl eg:/song/1769908356

* @return

*/

public static String getFlashPlayerUrl(String songUrl) {

String[] d = songUrl.split("/");

System.out.print(d.length);

return "http://www.xiami.com/widget/0_" + d[2] + "/singlePlayer.swf";

}

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

/*

* Document doc =

* Jsoup.connect("http://www.xiami.com/ajax/search-index")

*

* .data("query", "Java").data("key", "爱")

*

* .userAgent("Mozilla")

*

* .cookie("auth", "token")

*

* .timeout(6000)

*

* .get(); String content = doc.html();

*

* content = content.substring(content.indexOf("

  • ") + 4,

* content.indexOf("

"));

*

* doc = Jsoup.parse(content); System.out.print(doc.html()); Elements

* links = doc.select("a[href]"); System.out.println("sssssssssss" +

* links.size()); for (Element link : links) { String linkHref =

* link.attr("href"); String linkText = link.text();

* System.out.println(linkHref + "---" + linkText); }

*/

seachXiaMiSongs("爱");

// String s=getFlashPlayerUrl("/song/1769908356");

// System.out.print(s);

// http://www.xiami.com/widget/0_1769908356/singlePlayer.swf

}

}

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2011-10-28 13:47

浏览 3079

评论

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_745137.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

百度二级网页打不开_网站降权都是什么原因 - 百度蜘蛛池博客

原出处:蜘蛛池博客原文链接:网站降权都是什么原因? - 蜘蛛池博客我们要学会找出网站降权的原因,才能知道如何对症下药,解决问题。那么,网站降权都是什么原因?接下来蜘蛛池博客小编就跟大家介绍几…

oracle表空间状态如何离线,read/write - Oracle表空间的状态_数据库技术_Linux公社-Linux系统门户网站...

表空间状态-READ ONLY、READ WRITE1. 只读表空间的主要用途就是为了消除对数据库大部分静态数据的备份和恢复的需要。Oracle不会更新只读表空间爱你的文件,因此这部分文件可以存储于只读介质中,例如CD-ROM或WORM drives。2. 只读表空间并不是为了满足归档…

计算机违反网络策略该怎么弄,网络策略设置禁止您使用该网站获取您计算机的更新程序。怎么办?...

进入微软windows update网站提示:网络策略设置禁止您使用该网站获取您计算机的更新程序。如果您确认此消息有误,请向您的系统管理员咨询。本人找到的是在 组策略(打开方法 运行->gpedit.msc)->计算机配置->管理模板->windows组件->window…

基于php网上购物商城用例图,动漫周边电商网站的设计与实现(PHP,MySQL)(含录像)...

动漫周边电商网站的设计与实现(PHP,MySQL)(含录像)(毕业论文10000字,程序代码,MySQL数据库)摘要本商品电商网站是为了方面用户在线购物而设计开发的商品电商网站,其开发过程主要包括前端应用程序的开发和后台数据库的建立和维护两个方面。本网站的开发可以在网上进行…

网站备案服务器ip怎么填写,域名备案网站ip地址如何填写

域名备案网站ip地址如何填写 内容精选换一换依据《非经营性互联网信息服务备案管理办法》第十四条、第二十三条规定,如备案信息不真实,将关闭网站并注销备案。若您的备案信息发生变更,请您提前三十日申请变更备案。对于已备案网站仅对应一个域…

ssm访问html乱码_Maven+JSP+SSM+Mysql实现的音乐网站

项目简介项目来源于:https://gitee.com/coder_ze/iMusic本系统基于MavenJSPSSMMysql实现的音乐网站。主要实现的功能有音乐播放、下载、上传等几个模块。难度等级:中等技术栈编辑器Eclipse Version: 2020-03 (4.15.0)前端技术基础:htmlcssJav…

最新30佳 HTML5 网站设计案例欣赏

在过去的几年,Web开发者们已开始关注和使用 HTML5 了,如今 HTML5 得到了更加广泛的应用,并将未来逐渐成为 Web 舞台的主角。今天,本文向大家推荐30个应用 HTML5 的网站案例,让大家感受一下 HTML5 的魅力。 1- Orange S…

国外精美网站设计欣赏的200佳网站推荐(系列十一)

您可能还喜欢 寻找网页设计灵感的27个最佳网站推荐最新30个漂亮的个人作品集网页设计案例分享35个非常漂亮的单页网站设计案例60佳灵感来自大自然的网页设计作品欣赏分享100佳精美的作品集网站设计案例这个系列将向大家分享汇集漂亮网站设计欣赏的200佳网站。网页设计师们可通过…

优异开发工具引荐:10款在线调试代码的网站

对于 Web 开发人员来说,有个疾速测验代码的当地是十分便利的。在这篇文章,咱们收集了8个十分有用的网站,协助 Web 开发人员在线调试代码,其间有些站点还可以在线共享和备用代码,这可以协助你十分便利的和其它的开发人员…

button hover逐渐变色_8种纯CSS实现的炫酷HOVER效果,你应该在网站中尝试使用

英文 | https://www.blog.duomly.com/html-button-hover-effects/作者 | Anna Danilec翻译 | web前端开发(ID:web_qdkf)按钮悬停效果简介按钮是每个页面,Web应用程序或移动应用程序中经常使用的基本元素。按钮是CSS布局中必不可少的元素,因为…

高防服务器如何防止网站攻击,高防服务器怎么防御攻击的?

高防服务器怎么防御攻击的?高防服务器,从字面上来理解就是具备防御性能的服务器,高防服务器相较于普通的服务器除了超高的防御性能以外,在配置上通常也是比较高的,所以在使用上,会更稳定一些,所以深受各类…

HTML网页修改内容会掉收录吗,网站内容被收录后还可以修改吗?

被搜索引擎收录后的文章还可以修改吗?对于这个问题,不同的站长有不一样的意见,因此每个人对于网站SEO优化的认知都是不同的,因此看待这个问题思考的角度也会不一样,那么被收录后的网站内容还可以修改吗?下面就一起来了解一下。打…

数据 微信 html代码,微信数据后台统计网站模板

微信数据后台统计网站模板是一款HTML5后台管理网站模板下载资源下载此资源下载价格为4D币,请先登录资源文件列表codedown123-0819-55/assets/css/bootstrap.css , 126261codedown123-0819-55/assets/css/custom-styles.css , 7532codedown123-0819-55/assets/css/fo…

gpu服务器跑网站,gpu服务器跑深度学习

gpu服务器跑深度学习 内容精选换一换A800-9000(Atlas 800 训练服务器(型号 9000))开发或运行环境安装参考如下:开发环境方式一:直接在昇腾AI设备上使用msInstaller工具给本机安装开发环境,如图1所示。该方式仅适用于昇腾AI设备安装的OS支持ms…

2021年青海高考成绩查询查分入口,2021年青海高考成绩查询网站查分网址:http://www.qhjyks.com/...

【导语】高考结束后大家最为关心的问题就是在哪里查分,如何查分,无忧考网高考频道特别整理2021年青海高考成绩查询查分网址,成绩公布时考生可直接点击网址进行查分,预祝大家都能顺利的考上理想的大学!由于,…

【转】如何构建高扩展性网站?

本篇通过阅读《高扩展性网站的50条原则》,总结出以下内容。 一方面博主没有实际的架构经验,另一方面知识面也不够宽阔,所以只能系统的总结书中的要点,并根据自己的理解做些归纳。 主要内容 本书从多个方面围绕高扩展性提出了50条建…

用阿里云的免费 SSL 证书让网站从 HTTP 换成 HTTPS

HTTP 协议是不加密传输数据的,也就是用户跟你的网站之间传递数据有可能在途中被截获,破解传递的真实内容,所以使用不加密的 HTTP 的网站是不太安全的。所以, Google 的 Chrome 浏览器将在 2017 年 1 月开始,标记使用不…

第一次在Linux下部署PHP项目,采用LAMP网站架构(Linux+Apache+MySQL+PHP)

原文地址:https://www.cnblogs.com/huanglinxin/p/8643635.html LAMP指的Linux(操作系统)、Apache(HTTP 服务器),MySQL(数据库软件) 和PHP(有时也是指Perl或Python&…

新建网站常用的50个网站推广方法

网站推广是每一位站长都迫切关心的事情。现在我整理了我认为比较好的50个推广方法,大家根据自身的能力条件和外部环境,挑自己喜欢的适用的手法来用,希望对各位站长有所帮助。 1、qq群网站推广法。用几十个qq,每个qq加入几十个群&…

WEB网站建站过程

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。作者:张秋怡链接:https://www.zhihu.com/question/22689579/answer/22318058来源:知乎More: https://www.zhihu.com/question/22689579一个学期前我也和楼主…