通过JAVA获取酷6视频,现在很多社会网站都有这个功能,用户输入酷6视频地址后,能找到对应的视频及视频的缩略图,有些社区网站还能获取到视频的时长。
比如:新浪微博就有这个功能,当用户输入视频网址后,就能获取到相应的视频地址及视频的缩略图。
查看代码
- import java.io.IOException;
- import java.io.UnsupportedEncodingException;
- import java.net.MalformedURLException;
- import org.jsoup.Jsoup;
- import org.jsoup.nodes.Document;
- import org.jsoup.nodes.Element;
- import org.jsoup.select.Elements;
- /**
- * 获取Ku6视频
- * @author sunlightcs
- * 2011-3-31
- * http://hi.juziku.com/sunlightcs/
- */
- public class Ku6Test {
- private static String URL = "http://v.ku6.com/special/show_4027224/XFlByjLKGajkK_o-.html";
- public static void main(String[] args) throws Exception{
- Document doc = getURLContent();
- /**
- * 获取视频地址
- */
- Element flashEt = doc.getElementById("outSideSwfCode");
- String flash = flashEt.attr("value");
- System.out.println("视频地址:"+flash);
- /**
- * 获取视频缩略图
- */
- Element picEt = doc.getElementById("plVideosList");
- if(picEt!=null){
- Elements pics = picEt.getElementsByTag("img");
- String pic = pics.get(0).attr("src");
- System.out.println("视频缩略图:"+pic);
- /**
- * 获取视频时长
- */
- Element timeEt = picEt.select("span.review>cite").first();
- String time = timeEt.text();
- System.out.println("视频时长:"+time);
- }else{
- String pic = doc.getElementsByClass("s_pic").first().text();
- System.out.println("视频缩略图:"+pic);
- }
- }
- /**
- * 获取Ku6网页的内容
- */
- private static Document getURLContent() throws MalformedURLException, IOException, UnsupportedEncodingException {
- Document doc = Jsoup.connect(URL)
- .data("query", "Java")
- .userAgent("Mozilla")
- .cookie("auth", "token")
- .timeout(3000)
- .post();
- return doc;
- }
- }
其中要用到一个JAR包,链接地址如下:
http://jsoup.org/packages/jsoup-1.5.2.jar
【编辑推荐】