Skip to content

Commit 0ec617c

Browse files
committed
2023.11.21.0
YouTube Add absolute paths support PlaylistArrayForm: fix RTB issue Single media: the file name is not changed manually SCrawler Automation: add manual tasks DownloaderUrlsArrForm: fix RTB issue SiteSettingsBase: add use of Netscape cookies if enabled for a class; disable saving Netscape cookies on init Add feeds update when users' location and/or basic info changes API.TikTok: add ID, username and friendly name extraction from data; update request URL; update 'GetUserUrl' function; add new option 'Use video date as file date' API.YouTube: set 'UseNetscapeCookies'
1 parent 45adf73 commit 0ec617c

26 files changed

Lines changed: 334 additions & 92 deletions
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[*.vb]
22
# Modifier preferences
3-
file_header_template = Copyright (C) 2023 Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>
3+
file_header_template = Copyright (C) Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>

SCrawler.YouTube/.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[*.vb]
22
# Modifier preferences
3-
file_header_template = Copyright (C) 2023 Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>
3+
file_header_template = Copyright (C) Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>

SCrawler.YouTube/Controls/MusicPlaylistsForm.Designer.vb

Lines changed: 5 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

SCrawler.YouTube/Controls/MusicPlaylistsForm.vb

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,14 @@ Namespace API.YouTube.Controls
8080
End If
8181
LIST_PLAYLISTS.SelectedIndex = 0
8282

83+
If .ObjectType = Base.YouTubeMediaType.Channel Then
84+
With TXT_OUTPUT_PATH
85+
.CaptionMode = ICaptionControl.Modes.Label
86+
.CaptionToolTipText = String.Empty
87+
.CaptionToolTipEnabled = False
88+
End With
89+
End If
90+
8391
TXT_OUTPUT_PATH.Text = MyYouTubeSettings.OutputPath.Value
8492

8593
If Not .UserTitle.IsEmptyString Then
@@ -266,6 +274,7 @@ Namespace API.YouTube.Controls
266274
If Not TXT_SUBS.Checked Then .PostProcessing_OutputSubtitlesFormats.Clear()
267275
.OutputAudioCodec = CMB_FORMATS.Text
268276
If Not TXT_FORMATS_ADDIT.Checked Then .PostProcessing_OutputAudioFormats.Clear()
277+
.AbsolutePath = TXT_OUTPUT_PATH.Checked
269278
.File = TXT_OUTPUT_PATH.Text.CSFileP
270279
If MyYouTubeSettings.OutputPathAutoChange Then MyYouTubeSettings.OutputPath.Value = .File
271280
If MyDownloaderSettings.OutputPathAutoAddPaths Then MyYouTubeSettings.DownloadLocations.Add(.File, False)

SCrawler.YouTube/Controls/PlaylistArrayForm.Designer.vb

Lines changed: 6 additions & 4 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

SCrawler.YouTube/Controls/VideoOptionsForm.Designer.vb

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

SCrawler.YouTube/Controls/VideoOptionsForm.vb

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,12 @@ Namespace API.YouTube.Controls
7676
If Not def.ValueBetween(-1, 10000) Then def = 1080
7777
End If
7878
NUM_RES.Value = def
79+
With TXT_FILE
80+
.CaptionMode = ICaptionControl.Modes.CheckBox
81+
.CaptionWidth = 18
82+
.CaptionToolTipText = "If this checkbox is selected, this path is absolute and artist folder will not be created in it"
83+
.CaptionToolTipEnabled = True
84+
End With
7985
Else
8086
TP_OPTIONS.Controls.Remove(NUM_RES)
8187
TP_OPTIONS.ColumnStyles(3).Width = 0
@@ -297,8 +303,8 @@ Namespace API.YouTube.Controls
297303
.SelectedVideoIndex = -1
298304
.SelectedAudioIndex = cntIndex
299305
End If
300-
.File = f
301306
.FileSetManually = True
307+
.File = f
302308
.UpdateInfoFields()
303309
'#If DEBUG Then
304310
'Debug.WriteLine(.Command(False))
@@ -309,6 +315,7 @@ Namespace API.YouTube.Controls
309315
Else
310316
.SetMaxResolution(NUM_RES.Value)
311317
End If
318+
.AbsolutePath = TXT_FILE.Checked
312319
.File = f
313320
End If
314321
End With

SCrawler.YouTube/Objects/YouTubeMediaContainerBase.vb

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -543,18 +543,33 @@ Namespace API.YouTube.Objects
543543
Return _FileIsPlaylistObject
544544
End Get
545545
End Property
546+
Private _AbsolutePath As Boolean = False
547+
Public Property AbsolutePath As Boolean
548+
Get
549+
Return _AbsolutePath
550+
End Get
551+
Set(ByVal ap As Boolean)
552+
_AbsolutePath = ap
553+
If Elements.Count > 0 Then Elements.ForEach(Sub(e As YouTubeMediaContainerBase) e.AbsolutePath = ap)
554+
End Set
555+
End Property
546556
Public Overridable Property File As SFile Implements IYouTubeMediaContainer.File
547557
Get
548558
Return _File
549559
End Get
550560
Set(ByVal f As SFile)
551561
Select Case ObjectType
552562
Case YouTubeMediaType.Channel : _File = f.Path
553-
Case YouTubeMediaType.PlayList : _File.Path = $"{f.PathWithSeparator}{GetPlayListTitle()}"
563+
Case YouTubeMediaType.PlayList
564+
If AbsolutePath Then
565+
_File.Path = f.Path
566+
Else
567+
_File.Path = $"{f.PathWithSeparator}{GetPlayListTitle()}"
568+
End If
554569
Case YouTubeMediaType.Single
555570
If PlaylistCount > 0 And Not FileIgnorePlaylist Then
556571
_File.Path = f.Path
557-
Dim pls$ = GetPlayListTitle()
572+
Dim pls$ = If(AbsolutePath, String.Empty, GetPlayListTitle())
558573
If Not _File.Path.Contains(pls) Then _File.Path = $"{_File.PathWithSeparator(Not pls.IsEmptyString)}{pls}"
559574
ElseIf Not f.Name.IsEmptyString Then
560575
_File = f
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[*.vb]
22
# Modifier preferences
3-
file_header_template = Copyright (C) 2023 Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>
3+
file_header_template = Copyright (C) Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>

SCrawler/.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,4 +123,4 @@ insert_final_newline=false
123123
[*.vb]
124124
# Modifier preferences
125125
visual_basic_preferred_modifier_order = Partial,Default,Private,Protected,Public,Friend,NotOverridable,Overridable,MustOverride,Overloads,Overrides,MustInherit,NotInheritable,Static,Shared,Shadows,ReadOnly,WriteOnly,Dim,Const,WithEvents,Widening,Narrowing,Custom,Async:suggestion
126-
file_header_template = Copyright (C) 2023 Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>
126+
file_header_template = Copyright (C) Andy https://github.com/AAndyProgram\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 3 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program. If not, see <https://www.gnu.org/licenses/>

0 commit comments

Comments
 (0)