视频去水印 部分源码(包含部分php与go)有需要可以联系我

前段时间写了一个视频去水印的页面,没想到半年过去了,他居然失效了,看来大家都有在进步,只是我倒退了,不过没关系,我又来了

直接扣页面,可能适合py同学,基于浏览器么,啥都有了

我们今天说的是的php和go怎们解析

解析分享数据里的地址

首先我们获取到分享的数据,我们需要解析出里面的url,那么解析是通用的,我们就交给前端处理吧

bash 复制代码
str = "5.10 12/13 h@O.Xm EHi:/  哈哈这也太快乐了吧! # 瑶一瑶小肉包  https://v.xxx.com/id5M9Vm1/ 复制此链接,打开Dou音搜索,直接观看视频!"

    const reg = /((?:https?:\/\/)?[\w/\-?=%.]+\.(?:douyin|tiktok|kuaishou)\.com\S+)/i;
    const matches = str.match(reg);
    if (matches) {
        const url = matches[1];
        console.log(url)
        // 处理匹配到的 url
    }

前端拿到处理好,再给我们后端

获取302地址

分享出来的是一个短连接,我们需要做一些处理,使他变成长链,这里长链有两种一种是pc打开的,一种是手机的

我们使用的就是手机打开的

电脑打开的不是不能用,是因为他的参数太多了,你需要获取到各个参数,拼接等等,不适合来搞事情

我放下代码,大家看看

bash 复制代码
func getLocation(baseHost string) string {
	client := &http.Client{
		CheckRedirect: func(req *http.Request, via []*http.Request) error {
			return http.ErrUseLastResponse
		},
	}
	res, err := client.Get(baseHost)
	if err != nil {
		return baseHost
	}
	if res.StatusCode != 301 {
		return res.Header.Get("Location")
	}

	return res.Header.Get("Location")

}

再放个php的

bash 复制代码
function restoreUrl($shortUrl)
{
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $shortUrl);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Linux; Android 10; EML-AL00 Build/HUAWEIEML-AL00; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/6.2 TBS/45016 Mobile Safari/537.36 MMWEBID/5800 MicroMessenger/7.0.10.1580(0x27000AFC) Process/tools NetType/4G Language/zh_CN ABI/arm64");
    curl_setopt($curl, CURLOPT_HEADER, true);
    curl_setopt($curl, CURLOPT_NOBODY, false);
    curl_setopt($curl, CURLOPT_TIMEOUT, 15);
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2);
    curl_setopt($curl, CURLOPT_ENCODING, 'gzip');
    $data = curl_exec($curl);
    $curlInfo = curl_getinfo($curl);
    curl_close($curl);
    if ($curlInfo['http_code'] == 301 || $curlInfo['http_code'] == 302) {
        return $curlInfo['redirect_url'];
    }
    return '';
}
$url = restoreUrl("https://v.douyin.com/id5M9Vm1/");

echo $url;

这个时候你就可以找那个api替换参数获取视频了

相关推荐
阿珊和她的猫3 小时前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
hotlinhao3 小时前
php版的FormCreate使用注意事项
php·crmeb
fouryears_234176 小时前
Flutter InheritedWidget 详解:从生命周期到数据流动的完整解析
开发语言·flutter·客户端·dart
我好喜欢你~6 小时前
C#---StopWatch类
开发语言·c#
lifallen7 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研7 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
apocelipes9 小时前
下划线字段在golang结构体中的应用
golang
cui__OaO9 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
鱼鱼说测试9 小时前
Jenkins+Python自动化持续集成详细教程
开发语言·servlet·php
艾莉丝努力练剑10 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法