最近总是有很对小伙伴问我,快手去水印怎么做?现在快手卡的好严呀。分析快手原视频链接总是面临着各种各样的问题。作为小白站长,想做一个去水印的网站改怎么搞???
我总结了一下,大体存在如下问题:

  • PC版访问时,频繁出现滑块验证码
  • PC端JS有监测debug行为,动不动就跳转到不相干页面
  • COOKIE每5-10分钟就失效
  • IP频率限制(没什么好说的,直接买高匿HTTP代理)

针对上面的问题,归根结底时快手监测到人为调试,或者伪造请求,只要保证请求完全模拟真实情况(也就是请求的header部分)。cookie 中的did和didv 就显得尤为重要。只要能够动态生成cookie 中的 did 和 didv 所有的问题就迎刃而解。
QQ截图20200811221809.png

关于 did 和 didv的生成部分,我把核心代码放到下面,供需要的小伙伴参考,亲测稳定性很高。
php client拓展采用的是 guzzle github地址

<?php
error_reporting(0);
require './vendor/autoload.php';
$url = $_GET['url']?:'https://v.kuaishou.com/8qIlZu';
$client = new \GuzzleHttp\Client();
$response = $client->request('GET',$url,[
        'verify' => false,
        'timeout' => 60,
        'allow_redirects' => false,
        // 'proxy' => '',//代理ip
        'headers' => [
            'User-Agent' => 'Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1',
            'Accept'     => 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3',
            'accept-encoding'     => 'gzip, deflate, br',
            'accept-language'=> 'zh-CN,zh;q=0.9',
            'Connection' => "keep-alive",
            'Host' => "v.kuaishou.com",
            "Sec-Fetch-Mode" => "navigate",
            "Sec-Fetch-Site"=>"none",
            "Sec-Fetch-User"=>"?1",
            "upgrade-insecure-requests" => "1"
        ]
]);
$orgin_cookie = $response->getHeaderLine('Set-Cookie');
$regx = "/did=(.*?);/";
preg_match($regx, $orgin_cookie,$match);
$did = $match[1];
$regx = "/didv=(.*?);/";
preg_match($regx, $orgin_cookie,$match);
$didv = $match[1];
$cookie = 'did='.$did.'; didv='.$didv.';';
echo $cookie;

当然也可以联系站长 QQ 1738149410 微信:fcdearth 合作交流。