小红书去水印代码_小红书无水印图片,无水印视频解析下载,小红书视频图片去水印代码实现...

以从小红书“复制链接”出来的一个地址为例,例如:

http://xhslink.com/JDk1s 下面用PHP代码来实现提取图集,具体代码如下:

$userAgent = "Mozilla/5.0 (Linux; Android 5.0; SM-G900P Build/LRX21T) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.119 Mobile Safari/537.36";

$header= [

'User-Agent:'.$userAgent,

];

$url = 'http://xhslink.com/JDk1s';

//$url = 'http://xhslink.com/Mvo2s';

$content = curlGet($url, $header, $userAgent);

if (preg_match('|window.__INITIAL_SSR_STATE__=(.*?)\|', $content, $match)) {

$str = str_replace('undefined', '""', $match[1]);

$result= json_decode($str, true);

//针对图集解析

if ($result['NoteView']['noteType'] == 'normal') {

$imageData = $result['NoteView']['content']['imageList'];

$images = [];

foreach($imageData as $info) {

$images[] = 'https:'.$info['url'];

}

print_r($images);

}

//针对视频解析

if ($result['NoteView']['noteType'] == 'video') {

$videoUrl = $result['NoteView']['content']['video']['url'];

print_r($videoUrl);

}

}

function curlGet($url = '', $header = [], $userAgent = '') {

$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);

curl_setopt ( $ch, CURLOPT_HTTPHEADER, $header );

curl_setopt ( $ch, CURLOPT_USERAGENT, $userAgent );

curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, 0);

curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 0);

curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );

curl_setopt ( $ch, CURLOPT_MAXREDIRS, 5 );

curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 );

curl_setopt ( $ch, CURLOPT_TIMEOUT, 5 );

$content = curl_exec($ch);

curl_close($ch);

return $content;

}

通过解析分享网页的方式,是可以得到高清的图片,如果分享的是视频地址,也可以得到视频,但是因为这里是直接解析外网访问地址的,也就是小红书展示出来的网页,不管是视频还是图片都是有水印的。当然,这个是目前很多人能做到的通用的做法

那么如何去掉这块的水印呢,实际上可以通过借助第三方API的方式来解决,具体的代码如下:

// https://www.vnil.cn开发者后台生成的appkey

$appkey = '';

//需要解析的url

$url = '';

$param = [

'appkey'=> $appkey,

'url'=> $url,

];

//得到请求的地址:https://api.vnil.cn/api/parse/deal?appkey=appkey&url=url

$apiUrl = 'https://api.vnil.cn/api/parse/deal?'.http_build_query($param);

$ch = curl_init();

curl_setopt ( $ch, CURLOPT_URL, $apiUrl );

curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, FALSE );

curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, 0 );

curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 0 );

curl_setopt ( $ch, CURLOPT_MAXREDIRS, 5 );

curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );

curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 );

curl_setopt ( $ch, CURLOPT_TIMEOUT, 10 );

$content = curl_exec( $ch );

curl_close ( $ch);

print_r($content);

通过上面的代码,就可以很直接的得到无水印的图片了

感兴趣的朋友不妨可以试一下

### 小红书去水印代码实现方法 要去除小红书内容中的水印,可以通过调用第三方提供的API接口来实现。以下是基于PHP语言的一个具体实现方案: #### API接口配置 首先需要定义一个有效的API地址,并提供必要的认证参数(`userId` 和 `secretKey`)。这些参数通常由API提供商分配。 ```php $url = $_POST['url']; // 用户输入的小红书链接 $apiUrl = 'https://api.henghengmao.com/video?userId=C81E728D9DC2F636F06CC14862C&secretKey=eac9587cb785c2dd70cd07e116c&url=' . urlencode($url); ``` 此处 `$url` 是从小红书中复制的带水印内容的URL,经过编码后传递给API服务[^3]。 #### 发起HTTP请求 使用PHP内置函数或扩展库发起GET请求并获取响应数据。 ```php function getVideoInfo($apiUrl) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $apiUrl); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($ch); curl_close($ch); return json_decode($response, true); } $responseData = getVideoInfo($apiUrl); if ($responseData && isset($responseData['download_image'])) { echo "无水印视频封面: " . htmlspecialchars($responseData['download_image']); } if ($responseData && isset($responseData['down'])) { echo "无水印视频下载地址: " . htmlspecialchars($responseData['down']); } ``` 以上代码片段展示了如何利用curl库向目标服务器发送请求以及解析返回的数据结构[^3]。 #### 错误处理机制 当遇到错误情况时,应该能够识别状态码并给出相应提示信息。 | 状态码 | 描述 | |--------|----------------------------------------------------------------------| | 200 | 解析成功 | | 103 | 输入链接不正确 | | 104 | 接口不可用 | | 107 | 数据异常 | | 108 | 认证失败 | | 109 | 权限受限 | | 110 | 频率限制 | 如果收到的状态码不是200,则可以根据具体情况显示不同的警告消息[^4]。 --- ### 注意事项 - **合法性**:确保所使用的API来源合法合规,避免侵犯版权或其他法律风险。 - **安全性**:妥善保管自己的密钥组合(`userId`, `secretKey`)以防泄露造成损失。 - **兼容性**:部分特殊格式可能无法完全清除干净,请提前测试验证效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值