You've already forked N_m3u8DL-CLI
mirror of
https://github.com/nilaoda/N_m3u8DL-CLI
synced 2025-09-10 12:40:52 +02:00
Compare commits
23 Commits
Author | SHA1 | Date | |
---|---|---|---|
![]() |
71a9878aaa | ||
![]() |
769fe4e926 | ||
![]() |
1f57ba7c09 | ||
![]() |
71282bda30 | ||
![]() |
41ee8aebdf | ||
![]() |
a4537bc093 | ||
![]() |
b8a60b3917 | ||
![]() |
8091dd290f | ||
![]() |
d48e84e611 | ||
![]() |
9f5423a437 | ||
![]() |
ce7e38770a | ||
![]() |
8fdb2e918e | ||
![]() |
d4b7d240c1 | ||
![]() |
484d2941ed | ||
![]() |
a0f2b66575 | ||
![]() |
65cc0681e2 | ||
![]() |
7d980ec9a2 | ||
![]() |
ec5892c05a | ||
![]() |
9aed50fbf9 | ||
![]() |
d657b455cd | ||
![]() |
cda6575605 | ||
![]() |
0d6377d41b | ||
![]() |
9c76bdcbce |
@@ -32,7 +32,7 @@ namespace N_m3u8DL_CLI
|
|||||||
/*===============================================================================*/
|
/*===============================================================================*/
|
||||||
static Version ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
|
static Version ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version;
|
||||||
static string nowVer = $"{ver.Major}.{ver.Minor}.{ver.Build}";
|
static string nowVer = $"{ver.Major}.{ver.Minor}.{ver.Build}";
|
||||||
static string nowDate = "20201125";
|
static string nowDate = "20201206";
|
||||||
public static void WriteInit()
|
public static void WriteInit()
|
||||||
{
|
{
|
||||||
Console.Clear();
|
Console.Clear();
|
||||||
|
File diff suppressed because it is too large
Load Diff
@@ -1,5 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
<Project ToolsVersion="15.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props" Condition="Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" />
|
||||||
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
<PropertyGroup>
|
<PropertyGroup>
|
||||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
@@ -12,6 +13,8 @@
|
|||||||
<FileAlignment>512</FileAlignment>
|
<FileAlignment>512</FileAlignment>
|
||||||
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
<AutoGenerateBindingRedirects>true</AutoGenerateBindingRedirects>
|
||||||
<TargetFrameworkProfile />
|
<TargetFrameworkProfile />
|
||||||
|
<NuGetPackageImportStamp>
|
||||||
|
</NuGetPackageImportStamp>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
<PlatformTarget>x86</PlatformTarget>
|
<PlatformTarget>x86</PlatformTarget>
|
||||||
@@ -38,6 +41,9 @@
|
|||||||
<ApplicationIcon>logo_3Iv_icon.ico</ApplicationIcon>
|
<ApplicationIcon>logo_3Iv_icon.ico</ApplicationIcon>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
<ItemGroup>
|
<ItemGroup>
|
||||||
|
<Reference Include="Costura, Version=4.1.0.0, Culture=neutral, PublicKeyToken=9919ef960d84173d, processorArchitecture=MSIL">
|
||||||
|
<HintPath>..\packages\Costura.Fody.4.1.0\lib\net40\Costura.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Microsoft.JScript" />
|
<Reference Include="Microsoft.JScript" />
|
||||||
<Reference Include="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" />
|
<Reference Include="netstandard, Version=2.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51" />
|
||||||
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
@@ -130,4 +136,12 @@
|
|||||||
</EmbeddedResource>
|
</EmbeddedResource>
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<Import Project="..\packages\Fody.6.0.0\build\Fody.targets" Condition="Exists('..\packages\Fody.6.0.0\build\Fody.targets')" />
|
||||||
|
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||||
|
<PropertyGroup>
|
||||||
|
<ErrorText>这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”可下载这些程序包。有关更多信息,请参见 http://go.microsoft.com/fwlink/?LinkID=322105。缺少的文件是 {0}。</ErrorText>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Error Condition="!Exists('..\packages\Fody.6.0.0\build\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Fody.6.0.0\build\Fody.targets'))" />
|
||||||
|
<Error Condition="!Exists('..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Costura.Fody.4.1.0\build\Costura.Fody.props'))" />
|
||||||
|
</Target>
|
||||||
</Project>
|
</Project>
|
||||||
|
@@ -118,7 +118,7 @@ namespace N_m3u8DL_CLI
|
|||||||
m3u8Content = DecodeImooc.DecodeM3u8(m3u8Content);
|
m3u8Content = DecodeImooc.DecodeM3u8(m3u8Content);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m3u8Content.Trim().StartsWith("<?xml version") && m3u8Content.Contains("<MPD"))
|
if (m3u8Content.Contains("</MPD>") && m3u8Content.Contains("<MPD"))
|
||||||
{
|
{
|
||||||
var mpdSavePath = Path.Combine(DownDir, "dash.mpd");
|
var mpdSavePath = Path.Combine(DownDir, "dash.mpd");
|
||||||
//输出mpd文件
|
//输出mpd文件
|
||||||
@@ -660,7 +660,7 @@ namespace N_m3u8DL_CLI
|
|||||||
string keyUrl = key[1];
|
string keyUrl = key[1];
|
||||||
if (isQiQiuYun)
|
if (isQiQiuYun)
|
||||||
{
|
{
|
||||||
string encKey = Encoding.Default.GetString(Global.HttpDownloadFileToBytes(keyUrl, Headers));
|
/*string encKey = Encoding.Default.GetString(Global.HttpDownloadFileToBytes(keyUrl, Headers));
|
||||||
var indexs = "0-1-2-3-4-5-6-7-8-10-11-12-14-15-16-18".Split('-');
|
var indexs = "0-1-2-3-4-5-6-7-8-10-11-12-14-15-16-18".Split('-');
|
||||||
if (encKey.Length == 20)
|
if (encKey.Length == 20)
|
||||||
{
|
{
|
||||||
@@ -740,7 +740,9 @@ namespace N_m3u8DL_CLI
|
|||||||
{
|
{
|
||||||
decKey += encKey[Convert.ToInt32(_i)];
|
decKey += encKey[Convert.ToInt32(_i)];
|
||||||
}
|
}
|
||||||
key[1] = Convert.ToBase64String(Encoding.Default.GetBytes(decKey));
|
key[1] = Convert.ToBase64String(Encoding.Default.GetBytes(decKey));*/
|
||||||
|
|
||||||
|
key[1] = Convert.ToBase64String(Global.HttpDownloadFileToBytes(keyUrl, "User-Agent:Mozilla/5.0 (Linux; U; Android 7.0; zh-cn; 15 Plus Build/NRD90M) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/66.0.3359.126 MQQBrowser/9.4 Mobile Safari/537.36"));
|
||||||
} //气球云
|
} //气球云
|
||||||
else if (key[1].Contains("imooc.com/"))
|
else if (key[1].Contains("imooc.com/"))
|
||||||
{
|
{
|
||||||
|
@@ -51,20 +51,10 @@ namespace N_m3u8DL_CLI.NetCore
|
|||||||
{
|
{
|
||||||
SetConsoleCtrlHandler(cancelHandler, true);
|
SetConsoleCtrlHandler(cancelHandler, true);
|
||||||
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;
|
ServicePointManager.ServerCertificateValidationCallback = ValidateServerCertificate;
|
||||||
string loc = "zh-CN";
|
string loc = "en-US";
|
||||||
string currLoc = Thread.CurrentThread.CurrentUICulture.Name;
|
string currLoc = Thread.CurrentThread.CurrentUICulture.Name;
|
||||||
if (currLoc == "zh-TW" || currLoc == "zh-HK" || currLoc == "zh-MO")
|
if (currLoc == "zh-TW" || currLoc == "zh-HK" || currLoc == "zh-MO") loc = "zh-TW";
|
||||||
{
|
else if (currLoc == "zh-CN" || currLoc == "zh-SG") loc = "zh-CN";
|
||||||
loc = "zh-TW";
|
|
||||||
}
|
|
||||||
else if (loc == "zh-CN" || loc == "zh-SG")
|
|
||||||
{
|
|
||||||
loc = "zh-CN";
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
loc = "en-US";
|
|
||||||
}
|
|
||||||
//设置语言
|
//设置语言
|
||||||
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo(loc);
|
CultureInfo.DefaultThreadCurrentCulture = new CultureInfo(loc);
|
||||||
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(loc);
|
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo(loc);
|
||||||
|
@@ -292,4 +292,13 @@
|
|||||||
- 将默认UA修改为 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
|
- 将默认UA修改为 Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36
|
||||||
- 修改芒果TV请求头
|
- 修改芒果TV请求头
|
||||||
2020年11月25日
|
2020年11月25日
|
||||||
- 修正MPD判断最高清晰度的逻辑
|
- 修正MPD判断最高清晰度的逻辑
|
||||||
|
- 在MPD输入下支持选择音轨
|
||||||
|
- 修复BUG
|
||||||
|
2020年11月26日
|
||||||
|
- 优化MPD识别方案
|
||||||
|
- 修复MPD情况下时间戳溢出问题
|
||||||
|
2020年12月2日
|
||||||
|
- FIX Language Bug
|
||||||
|
2020年12月6日
|
||||||
|
- 使用手机UA请求气球云密钥服务器
|
@@ -1,5 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<packages>
|
<packages>
|
||||||
|
<package id="Fody" version="6.0.0" targetFramework="net46" developmentDependency="true" />
|
||||||
|
<package id="Costura.Fody" version="4.1.0" targetFramework="net46" />
|
||||||
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net46" />
|
<package id="Newtonsoft.Json" version="12.0.3" targetFramework="net46" />
|
||||||
<package id="NiL.JS" version="2.5.1428" targetFramework="net46" />
|
<package id="NiL.JS" version="2.5.1428" targetFramework="net46" />
|
||||||
</packages>
|
</packages>
|
Reference in New Issue
Block a user