浏览 1881 次
锁定老帖子 主题:通过JAVA获取6间房视频
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-04-02
比如:新浪微博就有这个功能,当用户输入视频网址后,就能获取到相应的视频地址及视频的缩略图。 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; /** * 获取6间房视频 * @author sunlightcs * 2011-3-31 * http://hi.juziku.com/sunlightcs/ */ public class CN6Test { private static String URL = "http://6.cn/watch/14757577.html"; public static void main(String[] args) throws Exception{ Document doc = getURLContent(); System.out.println("视频标题:"+doc.title()); /** * 获取视频缩略图 */ Element picEt = doc.getElementsByClass("summary").first(); String pic = picEt.getElementsByTag("img").first().attr("src"); System.out.println("视频缩略图:"+pic); String time = getVideoTime(doc,"watchUserVideo"); if(time==null){ time = getVideoTime(doc,"watchRelVideo"); } System.out.println("视频时长:"+time); /** * 获取视频地址 */ Element flashEt = doc.getElementById("video-share-code"); doc = Jsoup.parse(flashEt.attr("value")); String flash = doc.select("embed").attr("src"); System.out.println("视频地址:"+flash); } /** * 获取视频时长 */ private static String getVideoTime(Document doc, String id) { String time = null; Element timeEt = doc.getElementById(id); Elements links = timeEt.select("dt > a"); for (Element link : links) { String linkHref = link.attr("href"); if(linkHref.equalsIgnoreCase(URL)){ time = link.parent().getElementsByTag("em").first().text(); break; } } return time; } /** * 获取6间房网页的内容 */ 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; } } 全文请访问:http://www.juziku.com/wiki/772.htm 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |