mirror of
https://github.com/hama3254/Crunchyroll-Downloader-v3.0.git
synced 2024-12-24 15:11:48 +01:00
parent
e0bd03a39c
commit
fad0adccb5
Binary file not shown.
@ -22,158 +22,158 @@ Public Class Anime_Add
|
||||
Public AuthorizationCookie As String = Nothing
|
||||
|
||||
|
||||
Private Sub LoadBrowser(ByVal Url As String)
|
||||
Public Sub LoadBrowser(ByVal Url As String)
|
||||
|
||||
Main.LoadedUrl = Url
|
||||
|
||||
Dim locale As String = "en-US"
|
||||
If CBool(InStr(Url, "beta.crunchyroll.com")) = True And CBool(InStr(Url, "watch")) = True And CBool(Main.CrBetaBasic = Nothing) = False Then
|
||||
#Region "Get Cookies"
|
||||
Dim Cookies As String = "Cookie: "
|
||||
Try
|
||||
Dim Collector As New TaskCookieVisitor
|
||||
Dim CM As ICookieManager = CefSharp_Browser.WebBrowser1.GetCookieManager
|
||||
CM.VisitAllCookies(Collector)
|
||||
Dim DeviceRegion As String = Nothing
|
||||
Dim list As List(Of Global.CefSharp.Cookie) = Collector.Task.Result()
|
||||
For i As Integer = 0 To list.Count - 1
|
||||
'MsgBox(list.Item(i).Name + ":" + vbNewLine + list.Item(i).Value)
|
||||
If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) And CBool(InStr(list.Item(i).Name, "_evidon_suppress")) = False Then
|
||||
Cookies = Cookies + list.Item(i).Name + "=" + list.Item(i).Value + ";"
|
||||
End If
|
||||
If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) And CBool(InStr(list.Item(i).Name, "c_locale")) Then
|
||||
locale = list.Item(i).Value
|
||||
' Dim locale As String = "en-US"
|
||||
' If CBool(InStr(Url, "beta.crunchyroll.com")) = True And CBool(InStr(Url, "watch")) = True And CBool(Main.CrBetaBasic = Nothing) = False Then
|
||||
'#Region "Get Cookies"
|
||||
' Dim Cookies As String = Main.CR_Cookies '"Cookie: "
|
||||
' 'Try
|
||||
' ' Dim Collector As New TaskCookieVisitor
|
||||
' ' Dim CM As ICookieManager = CefSharp_Browser.WebBrowser1.GetCookieManager
|
||||
' ' CM.VisitAllCookies(Collector)
|
||||
' ' Dim DeviceRegion As String = Nothing
|
||||
' ' Dim list As List(Of Global.CefSharp.Cookie) = Collector.Task.Result()
|
||||
' ' For i As Integer = 0 To list.Count - 1
|
||||
' ' 'MsgBox(list.Item(i).Name + ":" + vbNewLine + list.Item(i).Value)
|
||||
' ' If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) And CBool(InStr(list.Item(i).Name, "_evidon_suppress")) = False Then
|
||||
' ' Cookies = Cookies + list.Item(i).Name + "=" + list.Item(i).Value + ";"
|
||||
' ' End If
|
||||
' ' If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) And CBool(InStr(list.Item(i).Name, "c_locale")) Then
|
||||
' ' locale = list.Item(i).Value
|
||||
|
||||
End If
|
||||
Next
|
||||
Catch ex As Exception
|
||||
' ' End If
|
||||
' ' Next
|
||||
' 'Catch ex As Exception
|
||||
' ' CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
' ' Exit Sub
|
||||
' 'End Try
|
||||
|
||||
'#End Region
|
||||
' Dim CRBetaBearer As String = "Bearer "
|
||||
' Try
|
||||
|
||||
' Dim Request As HttpWebRequest = CType(WebRequest.Create("https://www.crunchyroll.com/auth/v1/token"), HttpWebRequest)
|
||||
' Request.Method = "POST"
|
||||
' Request.ContentType = "application/x-www-form-urlencoded"
|
||||
' Request.Accept = "application/json, text/plain, */*"
|
||||
' 'Request.Headers.Add("Accept-Language: de,en-US;q=0.7,en;q=0.3")
|
||||
' Request.Headers.Add("Accept-Encoding: gzip, deflate, br") 'identity")
|
||||
' Request.Headers.Add("Authorization: " + Main.CrBetaBasic)
|
||||
' 'Request.Headers.Add("Referer: " + Url)
|
||||
' Request.Referer = Url
|
||||
' Request.Headers.Add("Origin: https://www.crunchyroll.com")
|
||||
' Request.Headers.Add(Cookies)
|
||||
' Dim Post As String = "grant_type=etp_rt_cookie"
|
||||
' Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
|
||||
' Request.ContentLength = byteArray.Length
|
||||
' Dim DataStream As Stream = Request.GetRequestStream()
|
||||
' DataStream.Write(byteArray, 0, byteArray.Length)
|
||||
' DataStream.Close()
|
||||
' Dim Response As HttpWebResponse = CType(Request.GetResponse(), HttpWebResponse)
|
||||
' DataStream = Response.GetResponseStream()
|
||||
' Dim reader As New StreamReader(DataStream)
|
||||
' Dim ServerResponseString As String = reader.ReadToEnd()
|
||||
' reader.Close()
|
||||
' DataStream.Close()
|
||||
' Response.Close()
|
||||
' 'Debug.WriteLine(ServerResponseString)
|
||||
' Dim Token() As String = ServerResponseString.Split(New String() {Chr(34) + "access_token" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim Token2() As String = Token(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' CRBetaBearer = CRBetaBearer + Token2(0)
|
||||
' Catch ex As Exception
|
||||
' Debug.WriteLine(ex.ToString)
|
||||
' CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
' Exit Sub
|
||||
' End Try
|
||||
|
||||
' Dim ObjectsUrl As String = Nothing
|
||||
|
||||
' Try
|
||||
' Using client As New WebClient()
|
||||
' client.Encoding = System.Text.Encoding.UTF8
|
||||
' client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
' client.Headers.Add("ACCEPT: application/json, text/javascript, */*; q=0.01")
|
||||
' client.Headers.Add("Accept-Encoding: identity")
|
||||
' client.Headers.Add("Referer: " + Url)
|
||||
' client.Headers.Add("Authorization: " + CRBetaBearer)
|
||||
' client.Headers.Add(Cookies) '+ WebBrowser1.Document.Cookie)
|
||||
' 'MsgBox(OmUStreamSplitEpisodeIndex(1))
|
||||
' Dim v2Content As String = client.DownloadString("https://www.crunchyroll.com/index/v2")
|
||||
' 'Debug.WriteLine(v2Content)
|
||||
|
||||
' Dim v2ContentBeta() As String = v2Content.Split(New String() {Chr(34) + "cms_beta" + Chr(34) + ":"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
|
||||
' Dim bucket() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "bucket" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim bucket2() As String = bucket(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' Dim policy() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "policy" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim policy2() As String = policy(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' Dim signature() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "signature" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim signature2() As String = signature(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' Dim key_pair_id() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "key_pair_id" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim key_pair_id2() As String = key_pair_id(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' Dim ObjectsURLBuilder3() As String = Url.Split(New String() {"watch/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim ObjectsURLBuilder4() As String = ObjectsURLBuilder3(1).Split(New String() {"/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
|
||||
' ObjectsUrl = "https://www.crunchyroll.com/cms/v2" + bucket2(0) + "/objects/" + ObjectsURLBuilder4(0) + "?locale=" + locale + "&Signature=" + signature2(0) + "&Policy=" + policy2(0) + "&Key-Pair-Id=" + key_pair_id2(0)
|
||||
' End Using
|
||||
|
||||
|
||||
' 'Debug.WriteLine(ObjectsUrl)
|
||||
|
||||
' Catch ex As Exception
|
||||
' CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
' Exit Sub
|
||||
' End Try
|
||||
|
||||
' Dim StreamsUrl As String = Nothing
|
||||
' Dim ObjectJson As String
|
||||
' Try
|
||||
' Try
|
||||
' Using client As New WebClient()
|
||||
' client.Encoding = System.Text.Encoding.UTF8
|
||||
' client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
' ObjectJson = client.DownloadString(ObjectsUrl)
|
||||
' End Using
|
||||
' Catch ex As Exception
|
||||
' Debug.WriteLine("error- getting name data")
|
||||
' Exit Sub
|
||||
' End Try
|
||||
|
||||
' Catch ex As Exception
|
||||
' CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
' Exit Sub
|
||||
' End Try
|
||||
|
||||
' Try
|
||||
' Dim StreamsUrlBuilder() As String = ObjectJson.Split(New String() {"videos/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim StreamsUrlBuilder2() As String = StreamsUrlBuilder(1).Split(New String() {"/streams"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' Dim StreamsUrlBuilder3() As String = ObjectsUrl.Split(New String() {"objects/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
' Dim StreamsUrlBuilder4() As String = StreamsUrlBuilder3(1).Split(New String() {"?"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
' StreamsUrl = StreamsUrlBuilder3(0) + "videos/" + StreamsUrlBuilder2(0) + "/streams?" + StreamsUrlBuilder4(1)
|
||||
|
||||
' ' Debug.WriteLine(StreamsUrl)
|
||||
' Catch ex As Exception
|
||||
' CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
' Exit Sub
|
||||
' End Try
|
||||
|
||||
' Main.GetBetaVideoProxy(StreamsUrl, Url)
|
||||
|
||||
|
||||
' Else
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
#End Region
|
||||
Dim CRBetaBearer As String = "Bearer "
|
||||
Try
|
||||
|
||||
Dim Request As HttpWebRequest = CType(WebRequest.Create("https://beta.crunchyroll.com/auth/v1/token"), HttpWebRequest)
|
||||
Request.Method = "POST"
|
||||
Request.ContentType = "application/x-www-form-urlencoded"
|
||||
Request.Accept = "application/json, text/plain, */*"
|
||||
'Request.Headers.Add("Accept-Language: de,en-US;q=0.7,en;q=0.3")
|
||||
Request.Headers.Add("Accept-Encoding: identity")
|
||||
Request.Headers.Add("Authorization: " + Main.CrBetaBasic)
|
||||
'Request.Headers.Add("Referer: " + Url)
|
||||
Request.Referer = Url
|
||||
Request.Headers.Add("Origin: https://beta.crunchyroll.com")
|
||||
Request.Headers.Add(Cookies)
|
||||
Dim Post As String = "grant_type=etp_rt_cookie"
|
||||
Dim byteArray() As Byte = Encoding.UTF8.GetBytes(Post)
|
||||
Request.ContentLength = byteArray.Length
|
||||
Dim DataStream As Stream = Request.GetRequestStream()
|
||||
DataStream.Write(byteArray, 0, byteArray.Length)
|
||||
DataStream.Close()
|
||||
Dim Response As HttpWebResponse = CType(Request.GetResponse(), HttpWebResponse)
|
||||
DataStream = Response.GetResponseStream()
|
||||
Dim reader As New StreamReader(DataStream)
|
||||
Dim ServerResponseString As String = reader.ReadToEnd()
|
||||
reader.Close()
|
||||
DataStream.Close()
|
||||
Response.Close()
|
||||
'Debug.WriteLine(ServerResponseString)
|
||||
Dim Token() As String = ServerResponseString.Split(New String() {Chr(34) + "access_token" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim Token2() As String = Token(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
CRBetaBearer = CRBetaBearer + Token2(0)
|
||||
Catch ex As Exception
|
||||
Debug.WriteLine(ex.ToString)
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
Dim ObjectsUrl As String = Nothing
|
||||
|
||||
Try
|
||||
Using client As New WebClient()
|
||||
client.Encoding = System.Text.Encoding.UTF8
|
||||
client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
client.Headers.Add("ACCEPT: application/json, text/javascript, */*; q=0.01")
|
||||
client.Headers.Add("Accept-Encoding: identity")
|
||||
client.Headers.Add("Referer: " + Url)
|
||||
client.Headers.Add("Authorization: " + CRBetaBearer)
|
||||
client.Headers.Add(Cookies) '+ WebBrowser1.Document.Cookie)
|
||||
'MsgBox(OmUStreamSplitEpisodeIndex(1))
|
||||
Dim v2Content As String = client.DownloadString("https://beta.crunchyroll.com/index/v2")
|
||||
'Debug.WriteLine(v2Content)
|
||||
|
||||
Dim v2ContentBeta() As String = v2Content.Split(New String() {Chr(34) + "cms_beta" + Chr(34) + ":"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
|
||||
Dim bucket() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "bucket" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim bucket2() As String = bucket(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim policy() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "policy" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim policy2() As String = policy(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim signature() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "signature" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim signature2() As String = signature(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim key_pair_id() As String = v2ContentBeta(1).Split(New String() {Chr(34) + "key_pair_id" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim key_pair_id2() As String = key_pair_id(1).Split(New String() {Chr(34) + "," + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim ObjectsURLBuilder3() As String = Url.Split(New String() {"watch/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim ObjectsURLBuilder4() As String = ObjectsURLBuilder3(1).Split(New String() {"/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
|
||||
ObjectsUrl = "https://beta.crunchyroll.com/cms/v2" + bucket2(0) + "/objects/" + ObjectsURLBuilder4(0) + "?locale=" + locale + "&Signature=" + signature2(0) + "&Policy=" + policy2(0) + "&Key-Pair-Id=" + key_pair_id2(0)
|
||||
End Using
|
||||
|
||||
|
||||
'Debug.WriteLine(ObjectsUrl)
|
||||
|
||||
Catch ex As Exception
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
Dim StreamsUrl As String = Nothing
|
||||
Dim ObjectJson As String
|
||||
Try
|
||||
Try
|
||||
Using client As New WebClient()
|
||||
client.Encoding = System.Text.Encoding.UTF8
|
||||
client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
ObjectJson = client.DownloadString(ObjectsUrl)
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
Debug.WriteLine("error- getting name data")
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
Catch ex As Exception
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
Try
|
||||
Dim StreamsUrlBuilder() As String = ObjectJson.Split(New String() {"videos/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim StreamsUrlBuilder2() As String = StreamsUrlBuilder(1).Split(New String() {"/streams"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim StreamsUrlBuilder3() As String = ObjectsUrl.Split(New String() {"objects/"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim StreamsUrlBuilder4() As String = StreamsUrlBuilder3(1).Split(New String() {"?"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
StreamsUrl = StreamsUrlBuilder3(0) + "videos/" + StreamsUrlBuilder2(0) + "/streams?" + StreamsUrlBuilder4(1)
|
||||
|
||||
' Debug.WriteLine(StreamsUrl)
|
||||
Catch ex As Exception
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
Main.GetBetaVideoProxy(StreamsUrl, Url)
|
||||
|
||||
|
||||
Else
|
||||
CefSharp_Browser.WebBrowser1.Load(Url)
|
||||
End If
|
||||
'End If
|
||||
|
||||
|
||||
End Sub
|
||||
@ -457,7 +457,7 @@ Public Class Anime_Add
|
||||
comboBox3.Enabled = False
|
||||
ComboBox1.Enabled = False
|
||||
|
||||
ElseIf CBool(InStr(Main.WebbrowserURL, "beta.crunchyroll.com")) = True Then
|
||||
ElseIf CBool(InStr(Main.WebbrowserURL, "crunchyroll.com")) = True Then
|
||||
|
||||
StatusLabel.Text = "Status: idle"
|
||||
'btn_dl.BackgroundImage = My.Resources.add_mass_running_cancel
|
||||
@ -484,18 +484,6 @@ Public Class Anime_Add
|
||||
comboBox3.Enabled = False
|
||||
ComboBox1.Enabled = False
|
||||
|
||||
Else 'CR
|
||||
|
||||
StatusLabel.Text = "Status: idle"
|
||||
'btn_dl.BackgroundImage = My.Resources.add_mass_running_cancel
|
||||
btn_dl.Text = "Cancel"
|
||||
Mass_DL_Cancel = True
|
||||
bt_Cancel_mass.Enabled = False
|
||||
bt_Cancel_mass.Visible = False
|
||||
Main.MassDL()
|
||||
comboBox4.Enabled = False
|
||||
comboBox3.Enabled = False
|
||||
ComboBox1.Enabled = False
|
||||
End If
|
||||
|
||||
ElseIf GroupBox3.Visible = True Then
|
||||
@ -605,11 +593,11 @@ Public Class Anime_Add
|
||||
End Sub
|
||||
|
||||
Private Sub ComboBox1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ComboBox1.SelectedIndexChanged
|
||||
If CBool(InStr(Main.WebbrowserURL, "beta.crunchyroll.com")) = True Then
|
||||
If CBool(InStr(Main.WebbrowserURL, "crunchyroll.com")) = True Then
|
||||
comboBox3.Items.Clear()
|
||||
comboBox4.Items.Clear()
|
||||
comboBox3.Enabled = True
|
||||
comboBox4.Enabled = True
|
||||
comboBox3.Enabled = False
|
||||
comboBox4.Enabled = False
|
||||
comboBox3.Text = Nothing
|
||||
comboBox4.Text = Nothing
|
||||
Dim SeasonSplit() As String = Main.CrBetaMass.Split(New String() {Chr(34) + "id" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
@ -617,45 +605,25 @@ Public Class Anime_Add
|
||||
Dim SeasonSplit2() As String = SeasonSplit(ComboBox1.SelectedIndex + 1).Split(New String() {Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim EpisodeJsonURL As String = Main.CrBetaMassBaseURL + "episodes?season_id=" + SeasonSplit2(0) + "&locale=" + Main.CrBetaMassParameters
|
||||
Dim EpisodeJson As String = Nothing
|
||||
|
||||
Debug.WriteLine(EpisodeJsonURL)
|
||||
|
||||
Try
|
||||
Using client As New WebClient()
|
||||
client.Encoding = System.Text.Encoding.UTF8
|
||||
client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
EpisodeJson = client.DownloadString(EpisodeJsonURL)
|
||||
End Using
|
||||
Catch ex As Exception
|
||||
Debug.WriteLine("error- getting EpisodeJson data")
|
||||
Debug.WriteLine(ex.ToString)
|
||||
Exit Sub
|
||||
End Try
|
||||
Main.CrBetaMassEpisodes = EpisodeJson
|
||||
|
||||
|
||||
|
||||
Dim EpisodeNameSplit() As String = EpisodeJson.Split(New String() {Chr(34) + "title" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
CefSharp_Browser.WebBrowser1.LoadUrl(EpisodeJsonURL)
|
||||
|
||||
|
||||
Dim EpisodeSplit() As String = EpisodeJson.Split(New String() {Chr(34) + "episode" + Chr(34) + ":" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
For i As Integer = 1 To EpisodeSplit.Count - 1
|
||||
Dim EpisodeSplit2() As String = EpisodeSplit(i).Split(New String() {Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim EpisodeNameSplit2() As String = EpisodeNameSplit(i).Split(New String() {Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
If EpisodeSplit(i).Substring(0, 1) = Chr(34) Then
|
||||
comboBox3.Items.Add(EpisodeNameSplit2(0))
|
||||
comboBox4.Items.Add(EpisodeNameSplit2(0))
|
||||
Else
|
||||
comboBox3.Items.Add("Episode " + EpisodeSplit2(0))
|
||||
comboBox4.Items.Add("Episode " + EpisodeSplit2(0))
|
||||
End If
|
||||
|
||||
Next
|
||||
|
||||
If comboBox3.Items.Count > 0 Then
|
||||
comboBox3.SelectedIndex = 0
|
||||
comboBox4.SelectedIndex = comboBox4.Items.Count - 1
|
||||
End If
|
||||
'Try
|
||||
' Using client As New WebClient()
|
||||
' client.Encoding = System.Text.Encoding.UTF8
|
||||
' client.Headers.Add(My.Resources.ffmpeg_user_agend.Replace(Chr(34), ""))
|
||||
' EpisodeJson = client.DownloadString(EpisodeJsonURL)
|
||||
' End Using
|
||||
'Catch ex As Exception
|
||||
' Debug.WriteLine("error- getting EpisodeJson data")
|
||||
' Debug.WriteLine(ex.ToString)
|
||||
' Exit Sub
|
||||
'End Try
|
||||
|
||||
|
||||
|
||||
@ -761,42 +729,6 @@ Public Class Anime_Add
|
||||
End If
|
||||
|
||||
|
||||
Else
|
||||
|
||||
'MsgBox(Main.WebbrowserURL)
|
||||
comboBox3.Items.Clear()
|
||||
comboBox4.Items.Clear()
|
||||
comboBox3.Enabled = True
|
||||
comboBox4.Enabled = True
|
||||
'comboBox3.Items.Add("[First Episode]")
|
||||
'comboBox4.Items.Add("[Last Episode]")
|
||||
Dim SeasonDropdownAnzahl As String() = Main.WebbrowserText.Split(New String() {"season-dropdown content-menu block"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Array.Reverse(SeasonDropdownAnzahl)
|
||||
Dim SDV As Integer = 0
|
||||
For i As Integer = 0 To SeasonDropdownAnzahl.Count - 1
|
||||
If CBool(InStr(SeasonDropdownAnzahl(i), Chr(34) + ">" + ComboBox1.SelectedItem.ToString + "</a>")) Then
|
||||
SDV = i
|
||||
End If
|
||||
Next
|
||||
'MsgBox(SDV)
|
||||
Dim Anzahl As String() = SeasonDropdownAnzahl(SDV).Split(New String() {"wrapper container-shadow hover-classes"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
'MsgBox(Anzahl(0))
|
||||
Dim c As Integer = Anzahl.Count - 1
|
||||
Array.Reverse(Anzahl)
|
||||
For i As Integer = 0 To Anzahl.Count - 2
|
||||
Dim URLGrapp As String() = Anzahl(i).Split(New String() {"title=" + Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
Dim URLGrapp2 As String() = URLGrapp(1).Split(New String() {Chr(34)}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
|
||||
comboBox3.Items.Add(URLGrapp2(0))
|
||||
comboBox4.Items.Add(URLGrapp2(0))
|
||||
Next
|
||||
|
||||
If comboBox3.Items.Count > 0 Then
|
||||
comboBox3.SelectedIndex = 0
|
||||
comboBox4.SelectedIndex = comboBox4.Items.Count - 1
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
End Sub
|
||||
|
@ -9,6 +9,7 @@ Imports System.Net.WebUtility
|
||||
Imports System.IO.Compression
|
||||
Imports System.Text
|
||||
Imports AdapterRequestHandler
|
||||
Imports System.Security.Policy
|
||||
|
||||
Public Class CefSharp_Browser
|
||||
|
||||
@ -39,6 +40,7 @@ Public Class CefSharp_Browser
|
||||
Main.WebbrowserURL = WebBrowser1.Address
|
||||
TextBox1.Text = Main.WebbrowserURL
|
||||
|
||||
|
||||
Try
|
||||
If Btn_Scan.Enabled = False And Btn_Scan.Text = "Start network scan" Then
|
||||
Btn_Scan.Enabled = True
|
||||
@ -71,15 +73,17 @@ Public Class CefSharp_Browser
|
||||
Try
|
||||
|
||||
Dim HTML As String = Await WebBrowser1.GetSourceAsync
|
||||
' Dim HTML2 As String = Await
|
||||
|
||||
Document = HTML
|
||||
Debug.WriteLine("get html")
|
||||
|
||||
Me.Invoke(New Action(Function() As Object
|
||||
|
||||
Main.WebbrowserText = HTML
|
||||
Main.WebbrowserURL = WebBrowser1.Address
|
||||
Main.WebbrowserTitle = DocumentTitle
|
||||
Main.ProcessHTML(HTML, WebBrowser1.Address, DocumentTitle)
|
||||
|
||||
'If Main.UserBowser = False Then
|
||||
' Me.Close()
|
||||
'End If
|
||||
@ -143,6 +147,28 @@ Public Class CefSharp_Browser
|
||||
|
||||
|
||||
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
|
||||
Dim locale As String = "en-US"
|
||||
Main.CR_Cookies = "Cookies: "
|
||||
Try
|
||||
Dim Collector As New TaskCookieVisitor
|
||||
Dim CM As ICookieManager = WebBrowser1.GetCookieManager
|
||||
CM.VisitAllCookies(Collector)
|
||||
Dim DeviceRegion As String = Nothing
|
||||
Dim list As List(Of Global.CefSharp.Cookie) = Collector.Task.Result()
|
||||
For i As Integer = 0 To list.Count - 1
|
||||
|
||||
If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) = True And CBool(InStr(list.Item(i).Name, "_evidon_suppress")) = False Then
|
||||
Main.CR_Cookies = Main.CR_Cookies + list.Item(i).Name + "=" + list.Item(i).Value + ";"
|
||||
' MsgBox(list.Item(i).Domain + vbNewLine + list.Item(i).Name + ":" + vbNewLine + list.Item(i).Value)
|
||||
End If
|
||||
If CBool(InStr(list.Item(i).Domain, ".crunchyroll.com")) And CBool(InStr(list.Item(i).Name, "c_locale")) Then
|
||||
locale = list.Item(i).Value
|
||||
|
||||
End If
|
||||
Next
|
||||
Catch ex As Exception
|
||||
Debug.Write(ex.ToString)
|
||||
End Try
|
||||
|
||||
Try
|
||||
My.Computer.Clipboard.SetText(WebBrowser1.Address)
|
||||
@ -283,23 +309,32 @@ Public Class CefSharp_Browser
|
||||
|
||||
If (Me.InvokeRequired) Then
|
||||
Me.Invoke(Sub()
|
||||
If CBool(InStr(e.Request.Url, "beta.crunchyroll.com")) = True And CBool(InStr(e.Request.Headers, "Basic ")) = True And Main.CrBetaBasic = Nothing Then
|
||||
If CBool(InStr(e.Request.Url, "crunchyroll.com")) = True And CBool(InStr(e.Request.Headers, "Basic ")) = True And Main.CrBetaBasic = Nothing Then
|
||||
Dim Basic As String() = e.Request.Headers.Split(New String() {"Basic "}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim Basic2 As String() = Basic(1).Split(New String() {","}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Main.CrBetaBasic = "Basic " + Basic2(0)
|
||||
Debug.WriteLine(Main.CrBetaBasic)
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End Sub)
|
||||
Else
|
||||
If CBool(InStr(e.Request.Url, "beta.crunchyroll.com")) = True And CBool(InStr(e.Request.Headers, "Basic ")) = True And Main.CrBetaBasic = Nothing Then
|
||||
If CBool(InStr(e.Request.Url, "crunchyroll.com")) = True And CBool(InStr(e.Request.Headers, "Basic ")) = True And Main.CrBetaBasic = Nothing Then
|
||||
Dim Basic As String() = e.Request.Headers.Split(New String() {"Basic "}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim Basic2 As String() = Basic(1).Split(New String() {","}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Main.CrBetaBasic = "Basic " + Basic2(0)
|
||||
Debug.WriteLine(Main.CrBetaBasic)
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End If
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
'
|
||||
'Debug.WriteLine(e.Request.Url)
|
||||
|
||||
@ -336,8 +371,7 @@ Public Class CefSharp_Browser
|
||||
Exit Sub
|
||||
End If
|
||||
Debug.WriteLine(e.Request.Url)
|
||||
|
||||
ElseIf CBool(InStr(e.Request.Url, "https://beta-api.crunchyroll.com/")) And CBool(InStr(e.Request.Url, "streams?")) Then
|
||||
ElseIf CBool(InStr(e.Request.Url, "crunchyroll.com/")) And CBool(InStr(e.Request.Url, "streams?")) Then
|
||||
If (Me.InvokeRequired) Then
|
||||
Me.Invoke(Sub() Main.LoadedUrls.Add(e.Request.Url))
|
||||
Exit Sub
|
||||
@ -346,25 +380,7 @@ Public Class CefSharp_Browser
|
||||
Exit Sub
|
||||
End If
|
||||
Debug.WriteLine(e.Request.Url)
|
||||
ElseIf CBool(InStr(e.Request.Url, "https://beta.crunchyroll.com/")) And CBool(InStr(e.Request.Url, "streams?")) Then
|
||||
If (Me.InvokeRequired) Then
|
||||
Me.Invoke(Sub() Main.LoadedUrls.Add(e.Request.Url))
|
||||
Exit Sub
|
||||
Else
|
||||
Main.LoadedUrls.Add(e.Request.Url)
|
||||
Exit Sub
|
||||
End If
|
||||
Debug.WriteLine(e.Request.Url)
|
||||
ElseIf CBool(InStr(e.Request.Url, "https://beta-api.crunchyroll.com/")) And CBool(InStr(e.Request.Url, "seasons?series_id=")) Then
|
||||
If (Me.InvokeRequired) Then
|
||||
Me.Invoke(Sub() Main.LoadedUrls.Add(e.Request.Url))
|
||||
Exit Sub
|
||||
Else
|
||||
Main.LoadedUrls.Add(e.Request.Url)
|
||||
Exit Sub
|
||||
End If
|
||||
Debug.WriteLine(e.Request.Url)
|
||||
ElseIf CBool(InStr(e.Request.Url, "https://beta.crunchyroll.com/")) And CBool(InStr(e.Request.Url, "seasons?series_id=")) Then
|
||||
ElseIf CBool(InStr(e.Request.Url, "crunchyroll.com/")) And CBool(InStr(e.Request.Url, "seasons?series_id=")) Then
|
||||
If (Me.InvokeRequired) Then
|
||||
Me.Invoke(Sub() Main.LoadedUrls.Add(e.Request.Url))
|
||||
Exit Sub
|
||||
@ -394,159 +410,6 @@ Public Class CefSharp_Browser
|
||||
|
||||
End If
|
||||
|
||||
Exit Sub
|
||||
|
||||
|
||||
Dim requesturl As String = Nothing
|
||||
Try
|
||||
requesturl = e.Request.Url
|
||||
Catch ex As Exception
|
||||
Exit Sub
|
||||
End Try
|
||||
|
||||
|
||||
|
||||
|
||||
If CBool(InStr(requesturl, "https://api.vrv.co")) And CBool(InStr(requesturl, "streams?")) Then
|
||||
Debug.WriteLine("vrv-1 " + requesturl)
|
||||
If Main.b = False Then
|
||||
Main.Get_VRV_VideoProxy(requesturl, Main.WebbrowserURL)
|
||||
Main.b = True
|
||||
End If
|
||||
|
||||
ElseIf CBool(InStr(requesturl, "https://api.vrv.co")) And CBool(InStr(requesturl, "seasons?series_id=")) Then
|
||||
Debug.WriteLine("vrv-2 " + requesturl)
|
||||
Exit Sub
|
||||
If Main.b = False Then
|
||||
Main.GetBetaSeasons(requesturl)
|
||||
Main.b = True
|
||||
End If
|
||||
|
||||
End If
|
||||
|
||||
|
||||
If CBool(InStr(requesturl, "https://beta-api.crunchyroll.com/")) And CBool(InStr(requesturl, "streams?")) Then
|
||||
|
||||
If Main.b = False Then
|
||||
Main.GetBetaVideoProxy(requesturl, Main.WebbrowserURL)
|
||||
Main.b = True
|
||||
End If
|
||||
|
||||
ElseIf CBool(InStr(requesturl, "https://beta.crunchyroll.com/")) And CBool(InStr(requesturl, "streams?")) Then
|
||||
|
||||
If Main.b = False Then
|
||||
Main.GetBetaVideoProxy(requesturl, Main.WebbrowserURL)
|
||||
Main.b = True
|
||||
End If
|
||||
|
||||
ElseIf CBool(InStr(requesturl, "https://beta.crunchyroll.com/")) And CBool(InStr(requesturl, "seasons?series_id=")) Then
|
||||
|
||||
If Main.b = False Then
|
||||
Main.GetBetaSeasons(requesturl)
|
||||
Main.b = True
|
||||
End If
|
||||
|
||||
ElseIf CBool(InStr(requesturl, "https://beta-api.crunchyroll.com/")) And CBool(InStr(requesturl, "seasons?series_id=")) Then
|
||||
|
||||
If Main.b = False Then
|
||||
Main.GetBetaSeasons(requesturl)
|
||||
Main.b = True
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
If CBool(InStr(requesturl, "https://title-api.prd.funimationsvc.com")) And CBool(InStr(requesturl, "?region=")) Then
|
||||
Try
|
||||
Main.WebbrowserCookie = Cookie
|
||||
Catch ex As Exception
|
||||
End Try
|
||||
|
||||
If Main.FunimationAPIRegion = Nothing Then
|
||||
|
||||
Me.Invoke(New Action(Function() As Object
|
||||
Dim parms As String() = requesturl.Split(New String() {"?region="}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Main.FunimationAPIRegion = "?region=" + parms(1)
|
||||
Return Nothing
|
||||
End Function))
|
||||
|
||||
End If
|
||||
|
||||
If Main.b = False Then
|
||||
If CBool(InStr(requesturl, "https://title-api.prd.funimationsvc.com/v1/show")) And CBool(InStr(requesturl, "/episodes/")) Then
|
||||
Main.GetFunimationNewJS_VideoProxy(requesturl)
|
||||
Main.b = True
|
||||
Exit Sub
|
||||
Else
|
||||
Debug.WriteLine("processing js")
|
||||
Me.Invoke(New Action(Function() As Object
|
||||
Anime_Add.ProcessFunimationJS(WebBrowser1.Address)
|
||||
Return Nothing
|
||||
End Function))
|
||||
Main.b = True
|
||||
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
|
||||
End If
|
||||
End If
|
||||
|
||||
If ScanTrue = True Then
|
||||
|
||||
If CBool(InStr(requesturl, ".m3u8")) Then
|
||||
Dim client0 As New WebClient
|
||||
client0.Encoding = Encoding.UTF8
|
||||
'client0.Headers.Add(HttpRequestHeader.Cookie, e.Channel.GetRequestHeader("Cookie"))
|
||||
Dim str0 As String = client0.DownloadString(requesturl)
|
||||
|
||||
If CBool(InStr(str0, "#EXTM3U")) Then
|
||||
Main.m3u8List.Add(requesturl)
|
||||
Else
|
||||
Dim DecodedUrl As String = UrlDecode(requesturl)
|
||||
'MsgBox(DecodedUrl)
|
||||
Dim URLSplit() As String = DecodedUrl.Split(New String() {".m3u8"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim URLSplit2() As String = URLSplit(0).Split(New String() {"https://"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim NewUrl As String = "https://" + URLSplit2(URLSplit2.Count - 1) + ".m3u8" + URLSplit(1)
|
||||
'MsgBox(NewUrl)
|
||||
Dim str1 As String = client0.DownloadString(NewUrl)
|
||||
'MsgBox(str1)
|
||||
If CBool(InStr(str1, "#EXTM3U")) Then
|
||||
Main.m3u8List.Add(NewUrl)
|
||||
End If
|
||||
|
||||
End If
|
||||
ElseIf CBool(InStr(requesturl, ".mpd")) Then
|
||||
Main.mpdList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, "googlevideo.com")) And CBool(InStr(requesturl, "&range=")) = True Then
|
||||
|
||||
Dim DecodedUrl As String = UrlDecode(requesturl)
|
||||
'MsgBox(DecodedUrl)
|
||||
Dim VideoUrl() As String = DecodedUrl.Split(New String() {"&range="}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim VideoUrl2() As String = VideoUrl(1).Split(New String() {"&"}, System.StringSplitOptions.RemoveEmptyEntries)
|
||||
Dim NewUrl As String = VideoUrl(0) + "&" + VideoUrl2(1)
|
||||
'Debug.WriteLine(NewUrl)
|
||||
|
||||
If Not Main.mpdList.Contains(NewUrl) Then
|
||||
Main.mpdList.Add(NewUrl)
|
||||
End If
|
||||
|
||||
|
||||
ElseIf CBool(InStr(requesturl, ".txt")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, ".vtt")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, ".srt")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, ".ass")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, ".ssa")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
ElseIf CBool(InStr(requesturl, ".dfxp")) Then
|
||||
Main.txtList.Add(requesturl)
|
||||
End If
|
||||
End If
|
||||
|
||||
|
||||
|
||||
End Sub
|
||||
|
||||
|
9
Crunchyroll Downloader/Main.designer.vb
generated
9
Crunchyroll Downloader/Main.designer.vb
generated
@ -51,6 +51,7 @@ Partial Class Main
|
||||
Me.Timer3OffToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.ThreadCount = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.MsgBoxToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.CRCookieToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem()
|
||||
CType(Me.PictureBox5, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.PictureBox6, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
CType(Me.MetroStyleManager1, System.ComponentModel.ISupportInitialize).BeginInit()
|
||||
@ -184,7 +185,7 @@ Partial Class Main
|
||||
'
|
||||
'ContextMenuStrip1
|
||||
'
|
||||
Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToggleDebugModeToolStripMenuItem, Me.OpenSettingsToolStripMenuItem, Me.TestDownloadToolStripMenuItem, Me.CheckCRBetaTokenToolStripMenuItem, Me.AddonHTMLToolStripMenuItem, Me.Timer3OffToolStripMenuItem, Me.ThreadCount, Me.MsgBoxToolStripMenuItem})
|
||||
Me.ContextMenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.ToggleDebugModeToolStripMenuItem, Me.OpenSettingsToolStripMenuItem, Me.TestDownloadToolStripMenuItem, Me.CheckCRBetaTokenToolStripMenuItem, Me.AddonHTMLToolStripMenuItem, Me.Timer3OffToolStripMenuItem, Me.ThreadCount, Me.MsgBoxToolStripMenuItem, Me.CRCookieToolStripMenuItem})
|
||||
Me.ContextMenuStrip1.Name = "ContextMenuStrip1"
|
||||
resources.ApplyResources(Me.ContextMenuStrip1, "ContextMenuStrip1")
|
||||
'
|
||||
@ -228,6 +229,11 @@ Partial Class Main
|
||||
Me.MsgBoxToolStripMenuItem.Name = "MsgBoxToolStripMenuItem"
|
||||
resources.ApplyResources(Me.MsgBoxToolStripMenuItem, "MsgBoxToolStripMenuItem")
|
||||
'
|
||||
'CRCookieToolStripMenuItem
|
||||
'
|
||||
Me.CRCookieToolStripMenuItem.Name = "CRCookieToolStripMenuItem"
|
||||
resources.ApplyResources(Me.CRCookieToolStripMenuItem, "CRCookieToolStripMenuItem")
|
||||
'
|
||||
'Main
|
||||
'
|
||||
Me.ApplyImageInvert = True
|
||||
@ -284,4 +290,5 @@ Partial Class Main
|
||||
Friend WithEvents Timer3OffToolStripMenuItem As ToolStripMenuItem
|
||||
Friend WithEvents ThreadCount As ToolStripMenuItem
|
||||
Friend WithEvents MsgBoxToolStripMenuItem As ToolStripMenuItem
|
||||
Friend WithEvents CRCookieToolStripMenuItem As ToolStripMenuItem
|
||||
End Class
|
||||
|
@ -534,6 +534,12 @@
|
||||
<data name=">>MsgBoxToolStripMenuItem.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>CRCookieToolStripMenuItem.Name" xml:space="preserve">
|
||||
<value>CRCookieToolStripMenuItem</value>
|
||||
</data>
|
||||
<data name=">>CRCookieToolStripMenuItem.Type" xml:space="preserve">
|
||||
<value>System.Windows.Forms.ToolStripMenuItem, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</data>
|
||||
<data name=">>$this.Name" xml:space="preserve">
|
||||
<value>Main</value>
|
||||
</data>
|
||||
@ -597,6 +603,12 @@
|
||||
<data name="MsgBoxToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>MsgBox(LoadedUrls)</value>
|
||||
</data>
|
||||
<data name="CRCookieToolStripMenuItem.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>233, 22</value>
|
||||
</data>
|
||||
<data name="CRCookieToolStripMenuItem.Text" xml:space="preserve">
|
||||
<value>CR_Cookie</value>
|
||||
</data>
|
||||
<data name="ContextMenuStrip1.Size" type="System.Drawing.Size, System.Drawing">
|
||||
<value>234, 202</value>
|
||||
</data>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -548,6 +548,15 @@ Namespace My.Resources
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die <html><head><meta name="color-scheme" content="light dark"></head><pre style="word-wrap: break-word; white-space: pre-wrap;"> ähnelt.
|
||||
'''</summary>
|
||||
Friend ReadOnly Property htmlReplace() As String
|
||||
Get
|
||||
Return ResourceManager.GetString("htmlReplace", resourceCulture)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
'''<summary>
|
||||
''' Sucht eine lokalisierte Zeichenfolge, die <a class="main_titel">Placeholder</a>
|
||||
'''<img alt="image error" src="balken.png" class="class-balken"> ähnelt.
|
||||
|
@ -562,4 +562,7 @@ START=[Start]
|
||||
END=[duration_ms]
|
||||
title=Ending</value>
|
||||
</data>
|
||||
<data name="htmlReplace" xml:space="preserve">
|
||||
<value><html><head><meta name="color-scheme" content="light dark"></head><pre style="word-wrap: break-word; white-space: pre-wrap;"></value>
|
||||
</data>
|
||||
</root>
|
Loading…
Reference in New Issue
Block a user