mirror of
https://github.com/AAndyProgram/SCrawler.git
synced 2026-03-14 15:52:18 +00:00
3.0.0.8
Script mode command Disabled Instagram error 403 Fixed script does not run
This commit is contained in:
10
Changelog.md
10
Changelog.md
@@ -1,7 +1,15 @@
|
|||||||
|
# 3.0.0.8
|
||||||
|
|
||||||
|
- Added
|
||||||
|
- Script mode ```command```
|
||||||
|
- Disabled Instagram error 403 (Forbidden) logging for downloading tagged data
|
||||||
|
- Fixed
|
||||||
|
- The script does not run after the user download is complete
|
||||||
|
|
||||||
# 3.0.0.7
|
# 3.0.0.7
|
||||||
|
|
||||||
- Added
|
- Added
|
||||||
- Ability to run a script after the user download if complete
|
- Ability to run a script after the user download is complete
|
||||||
- Hotkey ```F2``` for additional options in the user creation form
|
- Hotkey ```F2``` for additional options in the user creation form
|
||||||
- Fixed
|
- Fixed
|
||||||
- (Issue #32) In some cases, Date and Time are still not added for Stories and Tagged Photos
|
- (Issue #32) In some cases, Date and Time are still not added for Stories and Tagged Photos
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 26 KiB After Width: | Height: | Size: 26 KiB |
@@ -1,7 +1,7 @@
|
|||||||
# Social networks crawler
|
# Social networks crawler
|
||||||
|
|
||||||
[](https://github.com/AAndyProgram/SCrawler/releases/latest)
|
[](https://github.com/AAndyProgram/SCrawler/releases/latest)
|
||||||
[](https://github.com/AAndyProgram/SCrawler/)
|
[](https://github.com/AAndyProgram/SCrawler/blob/main/LICENSE)
|
||||||
[](FAQ.md)
|
[](FAQ.md)
|
||||||
[](https://github.com/AAndyProgram/SCrawler/wiki)
|
[](https://github.com/AAndyProgram/SCrawler/wiki)
|
||||||
[](HowToSupport.md)
|
[](HowToSupport.md)
|
||||||
|
|||||||
@@ -117,7 +117,7 @@ Namespace API.Base
|
|||||||
Private Const Name_LastUpdated As String = "LastUpdated"
|
Private Const Name_LastUpdated As String = "LastUpdated"
|
||||||
|
|
||||||
Private Const Name_ScriptUse As String = "ScriptUse"
|
Private Const Name_ScriptUse As String = "ScriptUse"
|
||||||
Private Const Name_ScriptFile As String = "ScriptFile"
|
Private Const Name_ScriptData As String = "ScriptData"
|
||||||
|
|
||||||
Private Const Name_DataMerging As String = "DataMerging"
|
Private Const Name_DataMerging As String = "DataMerging"
|
||||||
#Region "Downloaded data"
|
#Region "Downloaded data"
|
||||||
@@ -411,7 +411,7 @@ BlockNullPicture:
|
|||||||
#End Region
|
#End Region
|
||||||
#Region "Script"
|
#Region "Script"
|
||||||
Friend Overridable Property ScriptUse As Boolean = False Implements IUserData.ScriptUse
|
Friend Overridable Property ScriptUse As Boolean = False Implements IUserData.ScriptUse
|
||||||
Friend Overridable Property ScriptFile As SFile Implements IUserData.ScriptFile
|
Friend Overridable Property ScriptData As String Implements IUserData.ScriptData
|
||||||
#End Region
|
#End Region
|
||||||
#End Region
|
#End Region
|
||||||
#Region "Plugins Support"
|
#Region "Plugins Support"
|
||||||
@@ -585,16 +585,7 @@ BlockNullPicture:
|
|||||||
DownloadedPictures(True) = x.Value(Name_PicturesCount).FromXML(Of Integer)(0)
|
DownloadedPictures(True) = x.Value(Name_PicturesCount).FromXML(Of Integer)(0)
|
||||||
LastUpdated = AConvert(Of Date)(x.Value(Name_LastUpdated), ADateTime.Formats.BaseDateTime, Nothing)
|
LastUpdated = AConvert(Of Date)(x.Value(Name_LastUpdated), ADateTime.Formats.BaseDateTime, Nothing)
|
||||||
ScriptUse = x.Value(Name_ScriptUse).FromXML(Of Boolean)(False)
|
ScriptUse = x.Value(Name_ScriptUse).FromXML(Of Boolean)(False)
|
||||||
Dim s$ = x.Value(Name_ScriptFile)
|
ScriptData = x.Value(Name_ScriptData)
|
||||||
If Not s.IsEmptyString Then
|
|
||||||
If SFile.IsDirectory(s) Then
|
|
||||||
ScriptFile = s
|
|
||||||
Else
|
|
||||||
ScriptFile = New SFile(s) With {.Path = MyFile.Path}
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
ScriptFile = Nothing
|
|
||||||
End If
|
|
||||||
DataMerging = x.Value(Name_DataMerging).FromXML(Of Boolean)(False)
|
DataMerging = x.Value(Name_DataMerging).FromXML(Of Boolean)(False)
|
||||||
ChangeCollectionName(x.Value(Name_CollectionName), False)
|
ChangeCollectionName(x.Value(Name_CollectionName), False)
|
||||||
Labels.ListAddList(x.Value(Name_LabelsName).StringToList(Of String, List(Of String))("|", EDP.ReturnValue), LAP.NotContainsOnly, LAP.ClearBeforeAdd)
|
Labels.ListAddList(x.Value(Name_LabelsName).StringToList(Of String, List(Of String))("|", EDP.ReturnValue), LAP.NotContainsOnly, LAP.ClearBeforeAdd)
|
||||||
@@ -635,15 +626,7 @@ BlockNullPicture:
|
|||||||
x.Add(Name_PicturesCount, DownloadedPictures(True))
|
x.Add(Name_PicturesCount, DownloadedPictures(True))
|
||||||
x.Add(Name_LastUpdated, AConvert(Of String)(LastUpdated, ADateTime.Formats.BaseDateTime, String.Empty))
|
x.Add(Name_LastUpdated, AConvert(Of String)(LastUpdated, ADateTime.Formats.BaseDateTime, String.Empty))
|
||||||
x.Add(Name_ScriptUse, ScriptUse.BoolToInteger)
|
x.Add(Name_ScriptUse, ScriptUse.BoolToInteger)
|
||||||
If Not ScriptFile.IsEmptyString Then
|
x.Add(Name_ScriptData, ScriptData)
|
||||||
If ScriptFile.Path = MyFile.Path Then
|
|
||||||
x.Add(Name_ScriptFile, ScriptFile.File)
|
|
||||||
Else
|
|
||||||
x.Add(Name_ScriptFile, ScriptFile)
|
|
||||||
End If
|
|
||||||
Else
|
|
||||||
x.Add(Name_ScriptFile, String.Empty)
|
|
||||||
End If
|
|
||||||
x.Add(Name_CollectionName, CollectionName)
|
x.Add(Name_CollectionName, CollectionName)
|
||||||
x.Add(Name_LabelsName, Labels.ListToString(, "|", EDP.ReturnValue))
|
x.Add(Name_LabelsName, Labels.ListToString(, "|", EDP.ReturnValue))
|
||||||
x.Add(Name_DataMerging, DataMerging.BoolToInteger)
|
x.Add(Name_DataMerging, DataMerging.BoolToInteger)
|
||||||
@@ -964,17 +947,18 @@ BlockNullPicture:
|
|||||||
End Function
|
End Function
|
||||||
Private Sub RunScript()
|
Private Sub RunScript()
|
||||||
Try
|
Try
|
||||||
|
Const spa$ = "{0}"
|
||||||
If ScriptUse Then
|
If ScriptUse Then
|
||||||
Dim ScriptPattern$
|
Dim ScriptPattern$
|
||||||
If Not ScriptFile.IsEmptyString Then
|
If Not ScriptData.IsEmptyString Then
|
||||||
ScriptPattern = ScriptFile
|
ScriptPattern = ScriptData
|
||||||
Else
|
Else
|
||||||
ScriptPattern = Settings.ScriptFile.Value
|
ScriptPattern = Settings.ScriptData.Value
|
||||||
End If
|
End If
|
||||||
If Not ScriptPattern.IsEmptyString Then
|
If Not ScriptPattern.IsEmptyString Then
|
||||||
ScriptPattern &= " {0}"
|
If Not ScriptPattern.Contains(spa) Then ScriptPattern &= $" ""{spa}"""
|
||||||
Using b As New BatchExecutor With {.RedirectStandardError = True}
|
Using b As New BatchExecutor With {.RedirectStandardError = True}
|
||||||
b.Execute({String.Format(ScriptPattern, MyFile.CutPath(1).ToString)}, EDP.SendInLog + EDP.ThrowException)
|
b.Execute({String.Format(ScriptPattern, MyFile.CutPath(1).PathNoSeparator)}, EDP.SendInLog + EDP.ThrowException)
|
||||||
If b.HasError Or Not b.ErrorOutput.IsEmptyString Then Throw New Exception(b.ErrorOutput, b.ErrorException)
|
If b.HasError Or Not b.ErrorOutput.IsEmptyString Then Throw New Exception(b.ErrorOutput, b.ErrorException)
|
||||||
End Using
|
End Using
|
||||||
End If
|
End If
|
||||||
@@ -1035,11 +1019,8 @@ BlockNullPicture:
|
|||||||
End If
|
End If
|
||||||
f.CutPath.Exists(SFO.Path)
|
f.CutPath.Exists(SFO.Path)
|
||||||
Directory.Move(UserBefore.File.CutPath(, EDP.ThrowException).Path, f.Path)
|
Directory.Move(UserBefore.File.CutPath(, EDP.ThrowException).Path, f.Path)
|
||||||
If Not ScriptFile.IsEmptyString AndAlso ScriptFile.Path = UserBefore.File.Path Then
|
If Not ScriptData.IsEmptyString AndAlso ScriptData.Contains(UserBefore.File.PathNoSeparator) Then _
|
||||||
Dim ff As SFile = ScriptFile
|
ScriptData = ScriptData.Replace(UserBefore.File.PathNoSeparator, MyFile.PathNoSeparator)
|
||||||
f.Path = MyFile.Path
|
|
||||||
ScriptFile = ff
|
|
||||||
End If
|
|
||||||
Settings.UsersList.Remove(UserBefore)
|
Settings.UsersList.Remove(UserBefore)
|
||||||
Settings.UpdateUsersList(User)
|
Settings.UpdateUsersList(User)
|
||||||
UpdateUserInformation()
|
UpdateUserInformation()
|
||||||
@@ -1093,11 +1074,8 @@ BlockNullPicture:
|
|||||||
New ErrorsDescriber(False, False, False, New List(Of SFile))).Count = 0 Then
|
New ErrorsDescriber(False, False, False, New List(Of SFile))).Count = 0 Then
|
||||||
UserBefore.File.CutPath.Delete(SFO.Path, Settings.DeleteMode, EDP.SendInLog)
|
UserBefore.File.CutPath.Delete(SFO.Path, Settings.DeleteMode, EDP.SendInLog)
|
||||||
End If
|
End If
|
||||||
If Not ScriptFile.IsEmptyString AndAlso ScriptFile.Path = UserBefore.File.Path Then
|
If Not ScriptData.IsEmptyString AndAlso ScriptData.Contains(UserBefore.File.PathNoSeparator) Then _
|
||||||
Dim f As SFile = ScriptFile
|
ScriptData = ScriptData.Replace(UserBefore.File.PathNoSeparator, MyFile.PathNoSeparator)
|
||||||
f.Path = MyFile.Path
|
|
||||||
ScriptFile = f
|
|
||||||
End If
|
|
||||||
UpdateUserInformation()
|
UpdateUserInformation()
|
||||||
End If
|
End If
|
||||||
Catch ioex As InvalidOperationException When ioex.HelpLink = 1
|
Catch ioex As InvalidOperationException When ioex.HelpLink = 1
|
||||||
@@ -1263,7 +1241,7 @@ BlockNullPicture:
|
|||||||
Property DownloadImages As Boolean
|
Property DownloadImages As Boolean
|
||||||
Property DownloadVideos As Boolean
|
Property DownloadVideos As Boolean
|
||||||
Property ScriptUse As Boolean
|
Property ScriptUse As Boolean
|
||||||
Property ScriptFile As SFile
|
Property ScriptData As String
|
||||||
Function GetLVI(ByVal Destination As ListView) As ListViewItem
|
Function GetLVI(ByVal Destination As ListView) As ListViewItem
|
||||||
Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup
|
Function GetLVIGroup(ByVal Destination As ListView) As ListViewGroup
|
||||||
Sub LoadUserInformation()
|
Sub LoadUserInformation()
|
||||||
|
|||||||
@@ -299,7 +299,7 @@ Namespace API.Instagram
|
|||||||
Catch dex As ObjectDisposedException When Disposed
|
Catch dex As ObjectDisposedException When Disposed
|
||||||
Exit Do
|
Exit Do
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
If DownloadingException(ex, $"data downloading error [{URL}]") = 1 Then Continue Do Else Exit Do
|
If DownloadingException(ex, $"data downloading error [{URL}]", Section, False) = 1 Then Continue Do Else Exit Do
|
||||||
End Try
|
End Try
|
||||||
Loop
|
Loop
|
||||||
Catch eex2 As ExitException
|
Catch eex2 As ExitException
|
||||||
@@ -538,7 +538,7 @@ Namespace API.Instagram
|
|||||||
End If
|
End If
|
||||||
Return Nothing
|
Return Nothing
|
||||||
Catch ex As Exception
|
Catch ex As Exception
|
||||||
DownloadingException(ex, "API.Instagram.GetStoriesList")
|
DownloadingException(ex, "API.Instagram.GetStoriesList", Sections.Stories, False)
|
||||||
Return Nothing
|
Return Nothing
|
||||||
End Try
|
End Try
|
||||||
End Function
|
End Function
|
||||||
@@ -552,13 +552,18 @@ Namespace API.Instagram
|
|||||||
''' <inheritdoc cref="UserDataBase.DownloadingException(Exception, String)"/><br/>
|
''' <inheritdoc cref="UserDataBase.DownloadingException(Exception, String)"/><br/>
|
||||||
''' 1 - continue
|
''' 1 - continue
|
||||||
''' </summary>
|
''' </summary>
|
||||||
Protected Overrides Function DownloadingException(ByVal ex As Exception, ByVal Message As String, Optional ByVal FromPE As Boolean = False) As Integer
|
Protected Overloads Overrides Function DownloadingException(ByVal ex As Exception, ByVal Message As String, Optional ByVal FromPE As Boolean = False) As Integer
|
||||||
|
Return DownloadingException(ex, Message, Sections.Timeline, FromPE)
|
||||||
|
End Function
|
||||||
|
Private Overloads Function DownloadingException(ByVal ex As Exception, ByVal Message As String, ByVal s As Sections, ByVal FromPE As Boolean) As Integer
|
||||||
If Responser.StatusCode = HttpStatusCode.NotFound Then
|
If Responser.StatusCode = HttpStatusCode.NotFound Then
|
||||||
UserExists = False
|
UserExists = False
|
||||||
ElseIf Responser.StatusCode = HttpStatusCode.BadRequest Then
|
ElseIf Responser.StatusCode = HttpStatusCode.BadRequest Then
|
||||||
HasError = True
|
HasError = True
|
||||||
MyMainLOG = "Instagram credentials have expired"
|
MyMainLOG = "Instagram credentials have expired"
|
||||||
MySiteSettings.HashUpdateRequired.Value = True
|
MySiteSettings.HashUpdateRequired.Value = True
|
||||||
|
ElseIf Responser.StatusCode = HttpStatusCode.Forbidden And s = Sections.Tagged Then
|
||||||
|
Return 3
|
||||||
ElseIf Responser.StatusCode = 429 Then
|
ElseIf Responser.StatusCode = 429 Then
|
||||||
With MySiteSettings
|
With MySiteSettings
|
||||||
Dim WaiterExists As Boolean = .LastApplyingValue.HasValue
|
Dim WaiterExists As Boolean = .LastApplyingValue.HasValue
|
||||||
|
|||||||
8
SCrawler/Editors/GlobalSettingsForm.Designer.vb
generated
8
SCrawler/Editors/GlobalSettingsForm.Designer.vb
generated
@@ -153,7 +153,7 @@
|
|||||||
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 25.0!))
|
||||||
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Absolute, 28.0!))
|
||||||
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
TP_BASIS.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
TP_BASIS.Size = New System.Drawing.Size(570, 450)
|
TP_BASIS.Size = New System.Drawing.Size(570, 475)
|
||||||
TP_BASIS.TabIndex = 0
|
TP_BASIS.TabIndex = 0
|
||||||
'
|
'
|
||||||
'TXT_GLOBAL_PATH
|
'TXT_GLOBAL_PATH
|
||||||
@@ -689,7 +689,7 @@
|
|||||||
TAB_BASIS.Location = New System.Drawing.Point(4, 22)
|
TAB_BASIS.Location = New System.Drawing.Point(4, 22)
|
||||||
TAB_BASIS.Name = "TAB_BASIS"
|
TAB_BASIS.Name = "TAB_BASIS"
|
||||||
TAB_BASIS.Padding = New System.Windows.Forms.Padding(3)
|
TAB_BASIS.Padding = New System.Windows.Forms.Padding(3)
|
||||||
TAB_BASIS.Size = New System.Drawing.Size(576, 456)
|
TAB_BASIS.Size = New System.Drawing.Size(576, 481)
|
||||||
TAB_BASIS.TabIndex = 0
|
TAB_BASIS.TabIndex = 0
|
||||||
TAB_BASIS.Text = "Basis"
|
TAB_BASIS.Text = "Basis"
|
||||||
'
|
'
|
||||||
@@ -788,7 +788,7 @@
|
|||||||
Me.TAB_MAIN.Location = New System.Drawing.Point(0, 0)
|
Me.TAB_MAIN.Location = New System.Drawing.Point(0, 0)
|
||||||
Me.TAB_MAIN.Name = "TAB_MAIN"
|
Me.TAB_MAIN.Name = "TAB_MAIN"
|
||||||
Me.TAB_MAIN.SelectedIndex = 0
|
Me.TAB_MAIN.SelectedIndex = 0
|
||||||
Me.TAB_MAIN.Size = New System.Drawing.Size(584, 482)
|
Me.TAB_MAIN.Size = New System.Drawing.Size(584, 507)
|
||||||
Me.TAB_MAIN.TabIndex = 1
|
Me.TAB_MAIN.TabIndex = 1
|
||||||
'
|
'
|
||||||
'CONTAINER_MAIN
|
'CONTAINER_MAIN
|
||||||
@@ -797,7 +797,7 @@
|
|||||||
'CONTAINER_MAIN.ContentPanel
|
'CONTAINER_MAIN.ContentPanel
|
||||||
'
|
'
|
||||||
Me.CONTAINER_MAIN.ContentPanel.Controls.Add(Me.TAB_MAIN)
|
Me.CONTAINER_MAIN.ContentPanel.Controls.Add(Me.TAB_MAIN)
|
||||||
Me.CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(584, 482)
|
Me.CONTAINER_MAIN.ContentPanel.Size = New System.Drawing.Size(584, 507)
|
||||||
Me.CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.CONTAINER_MAIN.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
Me.CONTAINER_MAIN.LeftToolStripPanelVisible = False
|
||||||
Me.CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
Me.CONTAINER_MAIN.Location = New System.Drawing.Point(0, 0)
|
||||||
|
|||||||
@@ -36,8 +36,8 @@ Namespace Editors
|
|||||||
TXT_FOLDER_CMD.Text = .OpenFolderInOtherProgram
|
TXT_FOLDER_CMD.Text = .OpenFolderInOtherProgram
|
||||||
TXT_FOLDER_CMD.Checked = .OpenFolderInOtherProgram.Attribute
|
TXT_FOLDER_CMD.Checked = .OpenFolderInOtherProgram.Attribute
|
||||||
CH_RECYCLE_DEL.Checked = .DeleteToRecycleBin
|
CH_RECYCLE_DEL.Checked = .DeleteToRecycleBin
|
||||||
TXT_SCRIPT.Checked = .ScriptFile.Attribute
|
TXT_SCRIPT.Checked = .ScriptData.Attribute
|
||||||
TXT_SCRIPT.Text = .ScriptFile.Value
|
TXT_SCRIPT.Text = .ScriptData.Value
|
||||||
'Defaults
|
'Defaults
|
||||||
CH_SEPARATE_VIDEO_FOLDER.Checked = .SeparateVideoFolder.Value
|
CH_SEPARATE_VIDEO_FOLDER.Checked = .SeparateVideoFolder.Value
|
||||||
CH_DEF_TEMP.Checked = .DefaultTemporary
|
CH_DEF_TEMP.Checked = .DefaultTemporary
|
||||||
@@ -125,8 +125,8 @@ Namespace Editors
|
|||||||
.OpenFolderInOtherProgram.Value = TXT_FOLDER_CMD.Text
|
.OpenFolderInOtherProgram.Value = TXT_FOLDER_CMD.Text
|
||||||
.OpenFolderInOtherProgram.Attribute.Value = TXT_FOLDER_CMD.Checked
|
.OpenFolderInOtherProgram.Attribute.Value = TXT_FOLDER_CMD.Checked
|
||||||
.DeleteToRecycleBin.Value = CH_RECYCLE_DEL.Checked
|
.DeleteToRecycleBin.Value = CH_RECYCLE_DEL.Checked
|
||||||
.ScriptFile.Value = TXT_SCRIPT.Text
|
.ScriptData.Value = TXT_SCRIPT.Text
|
||||||
.ScriptFile.Attribute.Value = TXT_SCRIPT.Checked
|
.ScriptData.Attribute.Value = TXT_SCRIPT.Checked
|
||||||
'Defaults
|
'Defaults
|
||||||
.SeparateVideoFolder.Value = CH_SEPARATE_VIDEO_FOLDER.Checked
|
.SeparateVideoFolder.Value = CH_SEPARATE_VIDEO_FOLDER.Checked
|
||||||
.DefaultTemporary.Value = CH_DEF_TEMP.Checked
|
.DefaultTemporary.Value = CH_DEF_TEMP.Checked
|
||||||
@@ -200,10 +200,7 @@ Namespace Editors
|
|||||||
ChangePositionControlsEnabling()
|
ChangePositionControlsEnabling()
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub TXT_SCRIPT_ActionOnButtonClick(ByVal Sender As ActionButton) Handles TXT_SCRIPT.ActionOnButtonClick
|
Private Sub TXT_SCRIPT_ActionOnButtonClick(ByVal Sender As ActionButton) Handles TXT_SCRIPT.ActionOnButtonClick
|
||||||
If Sender.DefaultButton = ActionButton.DefaultButtons.Open Then
|
SettingsCLS.ScriptTextBoxButtonClick(TXT_SCRIPT, Sender)
|
||||||
Dim f As SFile = SFile.SelectFiles(TXT_SCRIPT.Text, False, "Select script file",, EDP.None).FirstOrDefault
|
|
||||||
If Not f.IsEmptyString Then TXT_SCRIPT.Text = f
|
|
||||||
End If
|
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub CH_COPY_CHANNEL_USER_IMAGE_CheckedChanged(sender As Object, e As EventArgs) Handles CH_COPY_CHANNEL_USER_IMAGE.CheckedChanged
|
Private Sub CH_COPY_CHANNEL_USER_IMAGE_CheckedChanged(sender As Object, e As EventArgs) Handles CH_COPY_CHANNEL_USER_IMAGE.CheckedChanged
|
||||||
CH_COPY_CHANNEL_USER_IMAGE_ALL.Enabled = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
CH_COPY_CHANNEL_USER_IMAGE_ALL.Enabled = CH_COPY_CHANNEL_USER_IMAGE.Checked
|
||||||
|
|||||||
8
SCrawler/Editors/UserCreatorForm.Designer.vb
generated
8
SCrawler/Editors/UserCreatorForm.Designer.vb
generated
@@ -125,7 +125,7 @@
|
|||||||
TP_SITE.ColumnCount = 3
|
TP_SITE.ColumnCount = 3
|
||||||
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 79.0!))
|
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 79.0!))
|
||||||
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 100.0!))
|
||||||
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 92.0!))
|
TP_SITE.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Absolute, 96.0!))
|
||||||
TP_SITE.Controls.Add(Me.CH_IS_CHANNEL, 0, 0)
|
TP_SITE.Controls.Add(Me.CH_IS_CHANNEL, 0, 0)
|
||||||
TP_SITE.Controls.Add(Me.CMB_SITE, 1, 0)
|
TP_SITE.Controls.Add(Me.CMB_SITE, 1, 0)
|
||||||
TP_SITE.Controls.Add(Me.BTT_OTHER_SETTINGS, 2, 0)
|
TP_SITE.Controls.Add(Me.BTT_OTHER_SETTINGS, 2, 0)
|
||||||
@@ -169,17 +169,17 @@
|
|||||||
Me.CMB_SITE.Location = New System.Drawing.Point(84, 3)
|
Me.CMB_SITE.Location = New System.Drawing.Point(84, 3)
|
||||||
Me.CMB_SITE.Margin = New System.Windows.Forms.Padding(3, 2, 3, 3)
|
Me.CMB_SITE.Margin = New System.Windows.Forms.Padding(3, 2, 3, 3)
|
||||||
Me.CMB_SITE.Name = "CMB_SITE"
|
Me.CMB_SITE.Name = "CMB_SITE"
|
||||||
Me.CMB_SITE.Size = New System.Drawing.Size(271, 22)
|
Me.CMB_SITE.Size = New System.Drawing.Size(267, 22)
|
||||||
Me.CMB_SITE.TabIndex = 1
|
Me.CMB_SITE.TabIndex = 1
|
||||||
Me.CMB_SITE.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
Me.CMB_SITE.TextBoxBorderStyle = System.Windows.Forms.BorderStyle.FixedSingle
|
||||||
'
|
'
|
||||||
'BTT_OTHER_SETTINGS
|
'BTT_OTHER_SETTINGS
|
||||||
'
|
'
|
||||||
Me.BTT_OTHER_SETTINGS.Dock = System.Windows.Forms.DockStyle.Fill
|
Me.BTT_OTHER_SETTINGS.Dock = System.Windows.Forms.DockStyle.Fill
|
||||||
Me.BTT_OTHER_SETTINGS.Location = New System.Drawing.Point(360, 2)
|
Me.BTT_OTHER_SETTINGS.Location = New System.Drawing.Point(356, 2)
|
||||||
Me.BTT_OTHER_SETTINGS.Margin = New System.Windows.Forms.Padding(1)
|
Me.BTT_OTHER_SETTINGS.Margin = New System.Windows.Forms.Padding(1)
|
||||||
Me.BTT_OTHER_SETTINGS.Name = "BTT_OTHER_SETTINGS"
|
Me.BTT_OTHER_SETTINGS.Name = "BTT_OTHER_SETTINGS"
|
||||||
Me.BTT_OTHER_SETTINGS.Size = New System.Drawing.Size(90, 24)
|
Me.BTT_OTHER_SETTINGS.Size = New System.Drawing.Size(94, 24)
|
||||||
Me.BTT_OTHER_SETTINGS.TabIndex = 2
|
Me.BTT_OTHER_SETTINGS.TabIndex = 2
|
||||||
Me.BTT_OTHER_SETTINGS.Text = "Options (F2)"
|
Me.BTT_OTHER_SETTINGS.Text = "Options (F2)"
|
||||||
TT_MAIN.SetToolTip(Me.BTT_OTHER_SETTINGS, "Other settings")
|
TT_MAIN.SetToolTip(Me.BTT_OTHER_SETTINGS, "Other settings")
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ Imports SCrawler.Plugin.Hosts
|
|||||||
Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons
|
Imports ADB = PersonalUtilities.Forms.Controls.Base.ActionButton.DefaultButtons
|
||||||
Namespace Editors
|
Namespace Editors
|
||||||
Friend Class UserCreatorForm : Implements IOkCancelToolbar
|
Friend Class UserCreatorForm : Implements IOkCancelToolbar
|
||||||
|
|
||||||
Private ReadOnly MyDef As DefaultFormProps(Of FieldsChecker)
|
Private ReadOnly MyDef As DefaultFormProps(Of FieldsChecker)
|
||||||
Friend Property User As UserInfo
|
Friend Property User As UserInfo
|
||||||
Friend Property UserInstance As IUserData
|
Friend Property UserInstance As IUserData
|
||||||
@@ -71,7 +72,7 @@ Namespace Editors
|
|||||||
Return TXT_SCRIPT.Checked
|
Return TXT_SCRIPT.Checked
|
||||||
End Get
|
End Get
|
||||||
End Property
|
End Property
|
||||||
Friend ReadOnly Property ScriptFile As SFile
|
Friend ReadOnly Property ScriptData As String
|
||||||
Get
|
Get
|
||||||
Return TXT_SCRIPT.Text
|
Return TXT_SCRIPT.Text
|
||||||
End Get
|
End Get
|
||||||
@@ -122,7 +123,7 @@ Namespace Editors
|
|||||||
CH_TEMP.Checked = Settings.DefaultTemporary
|
CH_TEMP.Checked = Settings.DefaultTemporary
|
||||||
CH_DOWN_IMAGES.Checked = Settings.DefaultDownloadImages
|
CH_DOWN_IMAGES.Checked = Settings.DefaultDownloadImages
|
||||||
CH_DOWN_VIDEOS.Checked = Settings.DefaultDownloadVideos
|
CH_DOWN_VIDEOS.Checked = Settings.DefaultDownloadVideos
|
||||||
TXT_SCRIPT.Checked = Settings.ScriptFile.Attribute
|
TXT_SCRIPT.Checked = Settings.ScriptData.Attribute
|
||||||
SetParamsBySite()
|
SetParamsBySite()
|
||||||
Else
|
Else
|
||||||
TP_ADD_BY_LIST.Enabled = False
|
TP_ADD_BY_LIST.Enabled = False
|
||||||
@@ -148,7 +149,7 @@ Namespace Editors
|
|||||||
CH_DOWN_IMAGES.Checked = .DownloadImages
|
CH_DOWN_IMAGES.Checked = .DownloadImages
|
||||||
CH_DOWN_VIDEOS.Checked = .DownloadVideos
|
CH_DOWN_VIDEOS.Checked = .DownloadVideos
|
||||||
TXT_SCRIPT.Checked = .ScriptUse
|
TXT_SCRIPT.Checked = .ScriptUse
|
||||||
TXT_SCRIPT.Text = .ScriptFile
|
TXT_SCRIPT.Text = .ScriptData
|
||||||
TXT_DESCR.Text = .Description
|
TXT_DESCR.Text = .Description
|
||||||
UserLabels.ListAddList(.Labels)
|
UserLabels.ListAddList(.Labels)
|
||||||
If UserLabels.ListExists Then TXT_LABELS.Text = UserLabels.ListToString
|
If UserLabels.ListExists Then TXT_LABELS.Text = UserLabels.ListToString
|
||||||
@@ -237,7 +238,7 @@ Namespace Editors
|
|||||||
End If
|
End If
|
||||||
.ParseUserMediaOnly = CH_PARSE_USER_MEDIA.Checked
|
.ParseUserMediaOnly = CH_PARSE_USER_MEDIA.Checked
|
||||||
.ScriptUse = TXT_SCRIPT.Checked
|
.ScriptUse = TXT_SCRIPT.Checked
|
||||||
.ScriptFile = TXT_SCRIPT.Text
|
.ScriptData = TXT_SCRIPT.Text
|
||||||
.UpdateUserInformation()
|
.UpdateUserInformation()
|
||||||
End With
|
End With
|
||||||
End If
|
End If
|
||||||
@@ -488,10 +489,7 @@ CloseForm:
|
|||||||
End Using
|
End Using
|
||||||
End Sub
|
End Sub
|
||||||
Private Sub TXT_SCRIPT_ActionOnButtonClick(ByVal Sender As ActionButton) Handles TXT_SCRIPT.ActionOnButtonClick
|
Private Sub TXT_SCRIPT_ActionOnButtonClick(ByVal Sender As ActionButton) Handles TXT_SCRIPT.ActionOnButtonClick
|
||||||
If Sender.DefaultButton = ADB.Open Then
|
SettingsCLS.ScriptTextBoxButtonClick(TXT_SCRIPT, Sender)
|
||||||
Dim f As SFile = SFile.SelectFiles(TXT_SCRIPT.Text, False, "Select script file").FirstOrDefault
|
|
||||||
If Not f.IsEmptyString Then TXT_SCRIPT.Text = f
|
|
||||||
End If
|
|
||||||
End Sub
|
End Sub
|
||||||
End Class
|
End Class
|
||||||
End Namespace
|
End Namespace
|
||||||
4
SCrawler/MainFrame.Designer.vb
generated
4
SCrawler/MainFrame.Designer.vb
generated
@@ -286,7 +286,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
Me.BTT_DOWN_SAVED.ImageTransparentColor = System.Drawing.Color.Magenta
|
Me.BTT_DOWN_SAVED.ImageTransparentColor = System.Drawing.Color.Magenta
|
||||||
Me.BTT_DOWN_SAVED.Name = "BTT_DOWN_SAVED"
|
Me.BTT_DOWN_SAVED.Name = "BTT_DOWN_SAVED"
|
||||||
Me.BTT_DOWN_SAVED.Size = New System.Drawing.Size(23, 22)
|
Me.BTT_DOWN_SAVED.Size = New System.Drawing.Size(23, 22)
|
||||||
Me.BTT_DOWN_SAVED.ToolTipText = "Download Reddit saved posts"
|
Me.BTT_DOWN_SAVED.ToolTipText = "Download saved posts"
|
||||||
'
|
'
|
||||||
'BTT_DOWN_SELECTED
|
'BTT_DOWN_SELECTED
|
||||||
'
|
'
|
||||||
@@ -565,7 +565,7 @@ Partial Public Class MainFrame : Inherits System.Windows.Forms.Form
|
|||||||
'
|
'
|
||||||
Me.USER_CONTEXT.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_DOWN, Me.BTT_CONTEXT_DOWN_LIMITED, Me.BTT_CONTEXT_DOWN_DATE_LIMIT, Me.BTT_CONTEXT_EDIT, Me.BTT_CONTEXT_DELETE, CONTEXT_SEP_1, Me.BTT_CONTEXT_FAV, Me.BTT_CONTEXT_TEMP, Me.BTT_CONTEXT_READY, Me.BTT_CONTEXT_GROUPS, Me.BTT_CONTEXT_SCRIPT, Me.BTT_CONTEXT_ADD_TO_COL, Me.BTT_CONTEXT_COL_MERGE, Me.BTT_CONTEXT_CHANGE_FOLDER, CONTEXT_SEP_2, Me.BTT_CHANGE_IMAGE, CONTEXT_SEP_3, Me.BTT_CONTEXT_OPEN_PATH, CONTEXT_SEP_4, Me.BTT_CONTEXT_OPEN_SITE, CONTEXT_SEP_5, Me.BTT_CONTEXT_INFO})
|
Me.USER_CONTEXT.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.BTT_CONTEXT_DOWN, Me.BTT_CONTEXT_DOWN_LIMITED, Me.BTT_CONTEXT_DOWN_DATE_LIMIT, Me.BTT_CONTEXT_EDIT, Me.BTT_CONTEXT_DELETE, CONTEXT_SEP_1, Me.BTT_CONTEXT_FAV, Me.BTT_CONTEXT_TEMP, Me.BTT_CONTEXT_READY, Me.BTT_CONTEXT_GROUPS, Me.BTT_CONTEXT_SCRIPT, Me.BTT_CONTEXT_ADD_TO_COL, Me.BTT_CONTEXT_COL_MERGE, Me.BTT_CONTEXT_CHANGE_FOLDER, CONTEXT_SEP_2, Me.BTT_CHANGE_IMAGE, CONTEXT_SEP_3, Me.BTT_CONTEXT_OPEN_PATH, CONTEXT_SEP_4, Me.BTT_CONTEXT_OPEN_SITE, CONTEXT_SEP_5, Me.BTT_CONTEXT_INFO})
|
||||||
Me.USER_CONTEXT.Name = "USER_CONTEXT"
|
Me.USER_CONTEXT.Name = "USER_CONTEXT"
|
||||||
Me.USER_CONTEXT.Size = New System.Drawing.Size(222, 430)
|
Me.USER_CONTEXT.Size = New System.Drawing.Size(222, 408)
|
||||||
'
|
'
|
||||||
'BTT_CONTEXT_DOWN
|
'BTT_CONTEXT_DOWN
|
||||||
'
|
'
|
||||||
|
|||||||
@@ -250,7 +250,7 @@ CloseResume:
|
|||||||
.FriendlyName = f.UserFriendly
|
.FriendlyName = f.UserFriendly
|
||||||
.Description = f.UserDescr
|
.Description = f.UserDescr
|
||||||
.ScriptUse = f.ScriptUse
|
.ScriptUse = f.ScriptUse
|
||||||
.ScriptFile = f.ScriptFile
|
.ScriptData = f.ScriptData
|
||||||
If Not f.MyExchangeOptions Is Nothing Then DirectCast(.Self, UserDataBase).ExchangeOptionsSet(f.MyExchangeOptions)
|
If Not f.MyExchangeOptions Is Nothing Then DirectCast(.Self, UserDataBase).ExchangeOptionsSet(f.MyExchangeOptions)
|
||||||
.Self.Labels.ListAddList(f.UserLabels, LAP.ClearBeforeAdd, LAP.NotContainsOnly)
|
.Self.Labels.ListAddList(f.UserLabels, LAP.ClearBeforeAdd, LAP.NotContainsOnly)
|
||||||
.UpdateUserInformation()
|
.UpdateUserInformation()
|
||||||
|
|||||||
@@ -32,6 +32,6 @@ Imports System.Runtime.InteropServices
|
|||||||
' by using the '*' as shown below:
|
' by using the '*' as shown below:
|
||||||
' <Assembly: AssemblyVersion("1.0.*")>
|
' <Assembly: AssemblyVersion("1.0.*")>
|
||||||
|
|
||||||
<Assembly: AssemblyVersion("3.0.0.7")>
|
<Assembly: AssemblyVersion("3.0.0.8")>
|
||||||
<Assembly: AssemblyFileVersion("3.0.0.7")>
|
<Assembly: AssemblyFileVersion("3.0.0.8")>
|
||||||
<Assembly: NeutralResourcesLanguage("en")>
|
<Assembly: NeutralResourcesLanguage("en")>
|
||||||
|
|||||||
@@ -8,6 +8,8 @@
|
|||||||
' but WITHOUT ANY WARRANTY
|
' but WITHOUT ANY WARRANTY
|
||||||
Imports PersonalUtilities.Functions.XML
|
Imports PersonalUtilities.Functions.XML
|
||||||
Imports PersonalUtilities.Functions.XML.Base
|
Imports PersonalUtilities.Functions.XML.Base
|
||||||
|
Imports PersonalUtilities.Forms.Controls
|
||||||
|
Imports PersonalUtilities.Forms.Controls.Base
|
||||||
Imports SCrawler.API
|
Imports SCrawler.API
|
||||||
Imports SCrawler.API.Base
|
Imports SCrawler.API.Base
|
||||||
Imports SCrawler.Plugin.Hosts
|
Imports SCrawler.Plugin.Hosts
|
||||||
@@ -97,7 +99,7 @@ Friend Class SettingsCLS : Implements IDisposable
|
|||||||
FromChannelDownloadTopUse = New XMLValue(Of Boolean)("FromChannelDownloadTopUse", False, MyXML, n)
|
FromChannelDownloadTopUse = New XMLValue(Of Boolean)("FromChannelDownloadTopUse", False, MyXML, n)
|
||||||
FromChannelCopyImageToUser = New XMLValue(Of Boolean)("FromChannelCopyImageToUser", True, MyXML, n)
|
FromChannelCopyImageToUser = New XMLValue(Of Boolean)("FromChannelCopyImageToUser", True, MyXML, n)
|
||||||
UpdateUserDescriptionEveryTime = New XMLValue(Of Boolean)("UpdateUserDescriptionEveryTime", True, MyXML, n)
|
UpdateUserDescriptionEveryTime = New XMLValue(Of Boolean)("UpdateUserDescriptionEveryTime", True, MyXML, n)
|
||||||
ScriptFile = New XMLValueAttribute(Of SFile, Boolean)("ScriptFile", "Use",,, MyXML, n)
|
ScriptData = New XMLValueAttribute(Of String, Boolean)("ScriptData", "Use",,, MyXML, n)
|
||||||
|
|
||||||
n = {"Users", "FileName"}
|
n = {"Users", "FileName"}
|
||||||
MaxUsersJobsCount = New XMLValue(Of Integer)("MaxJobsCount", DefaultMaxDownloadingTasks, MyXML, n)
|
MaxUsersJobsCount = New XMLValue(Of Integer)("MaxJobsCount", DefaultMaxDownloadingTasks, MyXML, n)
|
||||||
@@ -140,6 +142,15 @@ Friend Class SettingsCLS : Implements IDisposable
|
|||||||
If FileDateTimePositionEnd Then FileDateAppenderPattern = "{0}_{1}" Else FileDateAppenderPattern = "{1}_{0}"
|
If FileDateTimePositionEnd Then FileDateAppenderPattern = "{0}_{1}" Else FileDateAppenderPattern = "{1}_{0}"
|
||||||
End If
|
End If
|
||||||
End Sub
|
End Sub
|
||||||
|
#Region "Script"
|
||||||
|
Friend Shared Sub ScriptTextBoxButtonClick(ByRef TXT As TextBoxExtended, ByVal Sender As ActionButton)
|
||||||
|
If Sender.DefaultButton = ActionButton.DefaultButtons.Open Then
|
||||||
|
Dim f As SFile = SFile.SelectFiles(TXT.Text, False, "Select script file").FirstOrDefault
|
||||||
|
If Not f.IsEmptyString Then TXT.Text = f.ToString & " ""{0}"""
|
||||||
|
End If
|
||||||
|
End Sub
|
||||||
|
Friend ReadOnly Property ScriptData As XMLValueAttribute(Of String, Boolean)
|
||||||
|
#End Region
|
||||||
#Region "USERS"
|
#Region "USERS"
|
||||||
Friend Sub LoadUsers()
|
Friend Sub LoadUsers()
|
||||||
Try
|
Try
|
||||||
@@ -360,7 +371,6 @@ Friend Class SettingsCLS : Implements IDisposable
|
|||||||
End Property
|
End Property
|
||||||
Friend ReadOnly Property MaxUsersJobsCount As XMLValue(Of Integer)
|
Friend ReadOnly Property MaxUsersJobsCount As XMLValue(Of Integer)
|
||||||
Friend ReadOnly Property ImgurClientID As XMLValue(Of String)
|
Friend ReadOnly Property ImgurClientID As XMLValue(Of String)
|
||||||
Friend ReadOnly Property ScriptFile As XMLValueAttribute(Of SFile, Boolean)
|
|
||||||
#Region "Defaults"
|
#Region "Defaults"
|
||||||
Friend ReadOnly Property DefaultTemporary As XMLValue(Of Boolean)
|
Friend ReadOnly Property DefaultTemporary As XMLValue(Of Boolean)
|
||||||
Friend ReadOnly Property DefaultDownloadImages As XMLValue(Of Boolean)
|
Friend ReadOnly Property DefaultDownloadImages As XMLValue(Of Boolean)
|
||||||
|
|||||||
Reference in New Issue
Block a user