当前位置:  编程技术>java/j2ee

用java实现的获取优酷等视频缩略图的实现代码

    来源: 互联网  发布时间:2014-10-25

    本文导语:  想要php版的朋友可以到这里下载测试 http://www./codes/83179.html 代码如下:import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.MalformedURLException; import java.net.URL; import net.sf.json.*;public class test2 {    /...

想要php版的朋友可以到这里下载测试 http://www./codes/83179.html

代码如下:

import java.io.BufferedReader;
 import java.io.IOException;
 import java.io.InputStreamReader;
 import java.net.MalformedURLException;
 import java.net.URL;
 import net.sf.json.*;

public class test2 {
    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        String url = "http://v.youku.com/v_show/id_XMjU0MjI2NzY0.html";
        //获取id后面的字符串,也就是"XMjU0MjI2NzY0.html"
        int no = url.indexOf("id_");
        //获取id值,也就是"XMjU0MjI2NzY0"
        String videoId = url.substring(no+3, url.indexOf(".html"));
        //获取视频信息数据的URL对象
        URL myurl = new URL("http://v.youku.com/player/getPlayList/VideoIDS/"+videoId+"/timezone/+08/version/5/source/out?password=&ran=2513&n=3");
  
        //从URL对象中获取输入流
        InputStreamReader isr = new InputStreamReader(myurl.openStream());
        //封装
        BufferedReader br = new BufferedReader(isr);
        //readLine获取文本
        String urls = br.readLine();
        //关闭流
        br.close();
        //获取json对象
        JSONObject json = JSONObject.fromObject(urls);
        //获取json数据(data内)
        JSONArray arr = json.getJSONArray("data");
        //获取logo的值并打印
        System.out.println(JSONObject.fromObject(arr.get(0)).get("logo"));
    }
}

另一种没有用json的方案,比较小白,也是本人第一次的方法。
代码如下:

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.URL;

public class test1 {
    /**
     * @param args
     * @throws IOException
     */
    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub
        //设定视频地址
        String url = "http://v.youku.com/v_show/id_XMjU0MjI2NzY0.html";
        //获取id后面的字符串,也就是"XMjU0MjI2NzY0.html"
        int no = url.indexOf("id_");
        //获取id值,也就是"XMjU0MjI2NzY0"
        String videoId = url.substring(no+3, url.indexOf(".html"));
        //获取视频信息数据的URL对象
        URL myurl = new URL("http://v.youku.com/player/getPlayList/VideoIDS/"+videoId+"/timezone/+08/version/5/source/out?password=&ran=2513&n=3");
        //从URL对象中获取输入流
        InputStreamReader isr = new InputStreamReader(myurl.openStream());
        //封装
        BufferedReader br = new BufferedReader(isr);
        //readLine获取文本,然后以"/"切割文本中的信息
        String[] urls = br.readLine().split("\/");
        isr.close();
        br.close();
        //因为信息数据是固定格式的,所以直接第四个元素肯定是我们所需要的。
        String target = urls[3];
        //对上面结果继续以"切割
        String imgid = target.substring(0,target.indexOf("""));
        //拼凑一下,就是我们需要的地址了
        String img = "http://g2.ykimg.com/" + imgid;
        System.out.println(img);
        /*
         结果为:http://g2.ykimg.com/1100641F464D8FBF5FA3D90209C8DF96B67E2C-567E-AB53-C132-D7787FC966AB
         */
    }
}


    
 
 

您可能感兴趣的文章:

  • 使用java jdk中的LinkedHashMap实现简单的LRU算法
  • java.util.Date 和 java.slq.Date 如何最简单实现互换?
  • java tomcat实现Session对象的持久化原理及配置方法介绍
  • 不太明白,利用RMI实现JAVA分布式应用 和 EJB实现JAVA分布式应用有什么区别。
  • java实现判断字符串是否全是数字的四种方法代码举例
  • java的API中有没有既实现了Map接口又实现了List接口的类?
  • java序列化实现Serializable接口
  • 我是java新手,请问java中与平台相关的操作是怎样实现的
  • java中Spring框架介绍及如何实现对Bean的管理
  • java文件复制代码片断(java实现文件拷贝)
  • java Servlet实现Session创建存取以及url重写代码示例
  • 要做一个在applet,实现可以托拽的图形(比如长方形和线段等)?那位高手有资料?或者有没有java的第三方类库实现此功能?
  • java 与 C++ 实现后绑定的方法
  • XUL的Java实现 javaXUL
  • 用JAVA实现与QQ相同的功能!
  • 请问《软件工程java语言实现》一书在那里能下载
  • 如何实现Java下的回调函数!
  • Java实现的XForms Chiba
  • Java的SAMBA客户端实现 jCIFS
  • Lua 实现的 Java 虚拟机 luje
  • 菜鸟问题:如何让jsp来获取与之关联的java 数据(赚分了) iis7站长之家
  • Java图像缩略图类库 Thumbnailator
  • java中如何做缩略图
  • java根据url抓取并生成缩略图的示例
  • 谁能给一段java写的生成缩略图的代码?
  • Java缩略图生成库之Thumbnailator应用说明
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java Servlet获取和设置cookie实例代码
  • java获取系统路径字体、得到某个目录下的所有文件名、获取当前路径
  • java获取时间的方法总结
  • ***在线等待!!!***Java中怎样获取,应用图片?
  • 听说Java有获取硬件信息的类,那位知道是什么?
  • 如何获取Java 文件 编译时打印在控制台的错误信息.
  • 在java中如何获取window中环境变量path的值!!!高分
  • java获取日期的方法
  • 怎样在JAVA里实现获取指定服务器上所有可用数据库的列表??
  • 在执行java程序时,如何获取当前.class文件的路径
  • unix环境如何通过shell或java获取windows机器上的csv文件?
  • 菜鸟问题:如何让jsp来获取与之关联的java 数据(赚分了)
  • hp_ux下如何使用java获取top信息
  • java从输入流中获取数据并返回字节数组示例
  • java获取当前日期使用实例
  • java 获取项目文件路径实现方法
  • java正则表达式获取url的host示例
  • java 如何获取对象实例的大小
  • 在java中如何用URL类访问一个网页,并获取返回值????
  • java字符串比较获取字符串出现次数的示例
  • 请问用java通过pop3协议如何获取信件内容.
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3