美文网首页
Android实现抖音去水印

Android实现抖音去水印

作者: 我控几不住丶 | 来源:发表于2020-01-11 21:09 被阅读0次

前些天刷抖音,刷到个好看的动漫视频。本想着做个手机壁纸,但是下载到本地后发现有水印。这可不行啊,多影响美观,于是就写了个获取无水印视频的Demo。

Github传送门 biu biu biu ~~~

实现思路

抖音视频有个复制链接的功能,这个链接是能在网页打开的,如下:

https://v.douyin.com/qsSFEV/

这是个短链接,复制到浏览器地址栏后得到的长链接是下面的格式:

https://www.iesdouyin.com/share/video/6780619456570789127/?region=CN&mid=6771282500762471182&u_code=14fai9b88&titleType=title&utm_source=copy_link&utm_campaign=client_share&utm_medium=android&app=aweme

找到html里的video标签的src元素就是视频的播放链接地址。但这个播放链接的地址是带有水印的,如下:

https://aweme.snssdk.com/aweme/v1/playwm/?s_vid=93f1b41336a8b7a442dbf1c29c6bbc567de80acd4fb17215462db57f4eabe430bb64051acde98da903f0d8cdc9f23f24485b28f6a85ef87dafed6915bb0494f6&line=0

只需要替换掉链接中的playwm成play就是无水印的视频了(是不是很简单)。

代码实现

  1. 获取剪切版的内容
    /**
     * 获取剪切版内容
     *
     * @return 剪切版内容
     */
    public String getShareText() {
        ClipboardManager cm = (ClipboardManager) getSystemService(CLIPBOARD_SERVICE);
        ClipData data = null;
        if (cm != null) {
            data = cm.getPrimaryClip();
        }
        ClipData.Item item = null;
        if (data != null) {
            item = data.getItemAt(0);
        }
        String content = null;
        if (item != null) {
            content = item.getText().toString();
        }
        return content;
    }
  1. 提取链接地址
   /**
     * 获取链接地址
     *
     * @param text 获取浏览器分享出来的text文本
     */
    public static String getCompleteUrl(String text) {
        Pattern p = Pattern.compile("((http|ftp|https)://)(([a-zA-Z0-9._-]+\\.[a-zA-Z]{2,6})|([0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}))(:[0-9]{1,4})*(/[a-zA-Z0-9&%_./-~-]*)?", Pattern.CASE_INSENSITIVE);
        Matcher matcher = p.matcher(text);
        boolean find = matcher.find();
        if (find) {
            return matcher.group();
        } else {
            return "";
        }
    }
  1. 从Html中获取视频播放地址
    Document doc = Jsoup.connect(url).userAgent(userAgent).get();
    Elements video = doc.select("video[src]");
    for (Element el : video) {
        String videoUrl = el.attr("src");
        videoUrl = videoUrl.replace("playwm", "play");
        // 获取重定向的URL
        videoUrl = getRealUrl(videoUrl);
     }
  1. 获取重定向的地址
    /**
     * 获取重定向地址
     */
    private String getRealUrl(String urlStr) {
        String realUrl = urlStr;
        try {
            URL url = new URL(urlStr);
            HttpURLConnection conn = (HttpURLConnection) url.openConnection();
            conn.setRequestProperty("user-agent", "Mozilla/5.0.html (iPhone; U; CPU iPhone OS 4_3_3 like Mac " +
                    "OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) " +
                    "Version/5.0.html.2 Mobile/8J2 Safari/6533.18.5 ");
            conn.setInstanceFollowRedirects(false);
            int code = conn.getResponseCode();
            String redirectUrl = "";
            if (302 == code) {
                redirectUrl = conn.getHeaderField("Location");
            }
            if (redirectUrl != null && !redirectUrl.equals("")) {
                realUrl = redirectUrl;
            }
            conn.disconnect();
        } catch (IOException e) {
            e.printStackTrace();
        }
        return realUrl;
    }

然后有了这个地址就可以播放了(貌似这个只能在移动端播放)

差不多就只有这些了,具体的就看代码吧:

Github传送门 biu biu biu ~~~

最后

如果你有什么意见和反馈,欢迎到Github提issue(最喜欢别人提issue了)哈哈哈~

相关文章

  • Android实现抖音去水印

    前些天刷抖音,刷到个好看的动漫视频。本想着做个手机壁纸,但是下载到本地后发现有水印。这可不行啊,多影响美观,于是就...

  • Android抖音去水印

    前些天刷抖音,刷到个好看的动漫视频。本想着做个手机壁纸,但是下载到本地后发现有水印。这可不行啊,多影响美观,于是就...

  • PHP代码实现抖音去水印

    PHP代码实现抖音去水印 前言 1、一直在寻找抖音去水印的方法,PHP的要不然过时了,要不然就是java的,或者是...

  • 短视频怎么去水印丨抖音视频怎么去水印

    关键词:抖音去水印,短视频去水印、快手去水印、火山视频去水印 我们经常会想保存一些抖音的视频,或者进行视频搬砖。但...

  • Android实现抖音无水印视频

    前言 好久没写文章了,最近微信8.0设置视频状态比较火,很多小伙伴问有没有什么办法去除抖音上的水印,所以写一篇文章...

  • 抖音如何去水印

    看抖音短视频的时候,看到自己喜欢的视频,点击分享按钮,然后复制链接抖音界面直接复制链接 浏览器进入“抖兔”去水印(...

  • WeBox抖音去水印

    首先在常用下,打开云服务模块 打开抖音去水印开关(如果没有这个选项的,先点击上方的功能刷新) 开启功能后,别人发送...

  • 抖音视频api上线

    抖音Api 抖音视频Api、抖音爬虫、抖音去水印、抖音视频下载、抖音视频解析 更多信息请查看官网 TiToData...

  • 抖音免费去除水印【Small Lucky】

    摘要:抖音免费去除水印,无论您是手机还是PC端,只需要提供一个下载链接,免费下载到你的手机或者电脑上。 抖音去水印...

  • 短视频去水印工具

    周末做了一个短视频去水印的工具,暂时只支持抖音。 一、原理说明 所谓的去水印,不是真正的去除水印,而是找到无水印的...

网友评论

      本文标题:Android实现抖音去水印

      本文链接:https://www.haomeiwen.com/subject/fiebactx.html