KCNLanzouDirectLink est une bibliothèque d'implémentation native C # utilisée pour analyser les liens de partage de cloud Lanzou et obtenir des liens linéaires. Il fournit une API simple pour obtenir des liens droits au partage de cloud Blueshu sans connexion ou outils tiers.
Ce projet prend en charge les versions .NET suivantes:
.NET 6 , .NET 7 , .NET 8 et versions ultérieures de .NET. Vous pouvez installer la bibliothèque KCNLanzouDirectLink via le gestionnaire de package NuGet:
Install-Package KCNLanzouDirectLinkOu via la CLI .net:
dotnet add package KCNLanzouDirectLinkObtenez un lien droit pour les liens normaux
using KCNLanzouDirectLink ;
class Program
{
static async Task Main ( string [ ] args )
{
string shareUrl = "https://syxz.lanzoue.com/qwertyuiopas" ;
var ( state , link ) = await KCNLanzouLinkHelper . GetDirectLinkAsync ( shareUrl ) ;
if ( state == DownloadState . Success )
{
Console . WriteLine ( $ "直链地址: { link } " ) ;
}
else
{
Console . WriteLine ( $ "获取直链失败,状态: { state } " ) ;
}
}
}Obtenez le lien droit pour les liens chiffrés
using KCNLanzouDirectLink ;
class Program
{
static async Task Main ( string [ ] args )
{
string shareUrl = "https://syxz.lanzoue.com/qwertyuiopas" ;
string key = "your_encryption_key" ;
// 10 代表错误后重试次数。加密链接获取直链不稳定,推荐设置为10次。
var ( state , linkEncryption ) = await KCNLanzouLinkHelper . GetDirectLinkAsync ( shareUrl , key , 10 ) ;
if ( state == DownloadState . Success )
{
Console . WriteLine ( $ "直链地址: { linkEncryption } " ) ;
}
else
{
Console . WriteLine ( $ "获取直链失败,状态: { state } " ) ;
}
}
}L'acquisition en vrac des liens de partage des liens droits (prend en charge l'acquisition mixte de liens ordinaires / cryptés)
using KCNLanzouDirectLink ;
class Program
{
static async Task Main ( string [ ] args )
{
var urls = new List < Tuple < string , string > >
{
Tuple . Create ( "https://syxz.lanzoue.com/qwertyuiopas" , string . Empty ) ,
Tuple . Create ( "https://syxz.lanzouw.com/abcdefghijkl" , "your_encryption_key" )
} ;
// 该方法泛型传参允许实现 string 及 Tuple<string, string>。
var results = await KCNLanzouLinkHelper . GetDirectLinksAsync ( urls ) ;
foreach ( var ( url , state , link ) in results )
{
if ( state == DownloadState . Success )
{
Console . WriteLine ( $ " { url } 解析直链地址: { link } " ) ;
}
else
{
Console . WriteLine ( $ " { url } 获取直链失败,状态: { state } " ) ;
}
}
}
}Obtenir des informations sur le fichier de lien
using KCNLanzouDirectLink ;
class Program
{
static async Task Main ( string [ ] args )
{
string shareUrl = "https://syxz.lanzoue.com/qwertyuiopas" ;
string key = "your_encryption_key" ;
// true表示强制指定分享链接为加密链接类型。具体信息请查看方法重载。
var ( state , fileInfo ) = await KCNLanzouLinkHelper . GetFileInfoAsync ( true , shareUrl , key ) ;
if ( state == DownloadState . Success )
{
string message = $ "文件信息解析成功: n " +
$ "File info retrieved successfully: n " +
$ "文件名称\ File Name: { fileInfo . FileName } n " +
$ "文件大小\ File Size: { fileInfo . Size } n " +
$ "上传时间\ Upload Time: { fileInfo . UploadTime } n " +
$ "上传者\ Uploader: { fileInfo . Uploader } n " +
$ "运行平台\ Platform: { fileInfo . Platform } n " +
$ "文件描述\ Description: { fileInfo . Description } " ;
Console . WriteLine ( $ "直链地址: { message } " ) ;
}
else
{
Console . WriteLine ( $ "获取文件信息失败,状态: { state } " ) ;
}
}
} Énumérer la description DownloadState
public enum DownloadState
{
/// <summary>
/// 操作成功完成。
/// </summary>
Success ,
/// <summary>
/// 未提供有效的分享链接。
/// </summary>
UrlNotProvided ,
/// <summary>
/// 无法获取网页内容。分享链接无效?
/// </summary>
HtmlContentNotFound ,
/// <summary>
/// 无法解析加密信息。分享链接无效或密钥错误?
/// </summary>
PostsignNotFound ,
/// <summary>
/// 无法解析中间链接。
/// </summary>
IntermediateUrlNotFound ,
/// <summary>
/// 无法获取最终的直链地址。
/// </summary>
FinalUrlNotFound ,
/// <summary>
/// 未知错误,操作未成功完成。
/// </summary>
Error
} Description de la structure d'acquisition d'informations de fichier LanzouFileInfo
public class LanzouFileInfo
{
/// <summary>
/// 文件名称
/// </summary>
public string ? FileName { get ; set ; }
/// <summary>
/// 上传时间
/// </summary>
public string ? UploadTime { get ; set ; }
/// <summary>
/// 文件大小
/// </summary>
public string ? Size { get ; set ; }
/// <summary>
/// 上传者
/// </summary>
public string ? Uploader { get ; set ; }
/// <summary>
/// 运行平台
/// </summary>
public string ? Platform { get ; set ; }
/// <summary>
/// 文件描述
/// </summary>
public string ? Description { get ; set ; }
} Veuillez aller au référentiel GitHub pour afficher la démo de la bibliothèque de classe: https://github.com/jddkcn/kcnlanzoudirectLink
Ce projet utilise le contrat de licence A-GPLV3.
Posez des questions, suggestions d'amélioration ou soumettez directement une demande de traction!