首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Jsoup视频Vk解析

Jsoup视频Vk解析
EN

Stack Overflow用户
提问于 2018-02-18 16:35:27
回答 1查看 444关注 0票数 0

我想要获取视频的完整链接。我有链接https://vk.com/video101958492_456239017

这是html页面:...

代码语言:javascript
复制
div class="videoplayer_media" style>
   video preload="metadata" class="videoplayer_media_provider" tabindex="-1" 
    aria-hidden="true" 
    src="https://cs543609.vkuservideo.net/u23043775/videos/c848bac57d.240.mp4?
       extra=JUrKvs_MKCeL0vDhGHfbh4xcCWR8UIFD0TAodiPOE7oXrrU1ePZ8-
       1WLDYUBQFWQtqD_BE-
       gFjjqISdWJpsUyidCIolHzeDa_o5zCvShsQdBVePR07Kn4_auRdbGs62UXFsSLeYYGks">
   /video>
/div>


private void videoVk() {
    new Thread(new Runnable() {
        @Override
        public void run() {
            final StringBuilder builder = new StringBuilder();
            try {
                Document doc = 
                Jsoup.connect("https://vk.com/video23043775_170249049")
                     .userAgent("Mozilla/5.0 (X11; Linux x86_64) 
                                 AppleWebKit/535.21 (KHTML, like 
                                 Gecko) Chrome/19.0.1042.0 
                                 Safari/535.21")
                     .header("Accept-Encoding", "gzip, deflate")
                     .maxBodySize(0)
                     .timeout(10000)
                     .get();

                Element video = 
                doc.select("meta[property=og:video]").first();

                Log.d("VIDEO_LINK", video.attr("content"));

            } catch (IOException e) {
                builder.append("Error:") 
                .append(e.getMessage()).append("\n");
                Log.d("ERROR", builder.toString());
            }

            if(getActivity() == null)
                return;
        }
    }).start();
}

它返回:https://vk.com/video?act=get_swf&oid=5115837&vid=168139503&embed_hash=ba98594d0463bbfa

应返回https://cs543609.vkuservideo.net/u23043775/videos/c848bac57d.240.mp4?extra=JUrKvs_MKCeL0vDhGHfbh4xcCWR8UIFD0TAodiPOE7oXrrU1ePZ8-1WLDYUBQFWQtqD_BE-gFjjqISdWJpsUyidCIolHzeDa_o5zCvShsQdBVePR07Kn4_auRdbGs62UXFsSLeYYGks

我试图通过一个标签,一个类来查找一个元素,但是它返回null。

代码语言:javascript
复制
doc.getElementsByTag("video");
doc.getElementsByClass("videoplayer_media_provider");
EN

回答 1

Stack Overflow用户

发布于 2018-02-18 17:12:14

  1. 您不应该直接向VK站点发出请求。有一个接口可以做到这一点:https://vk.com/dev/manuals该方法用于返回视频:

https://vk.com/dev/video.get?params[videos]=101958492_456239017¶ms[extended]=1¶ms[v]=5.73

  • VK不返回视频文件,只返回可以嵌入的播放器代码。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48849809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档