mirror of
https://github.com/AAndyProgram/SCrawler.git
synced 2026-03-14 15:52:18 +00:00
3.0.0.0
Parsing profiles descriptions (Reddit and Twitter) and updating it Filters: deleted, suspended, dates Collections containing deleted profiles are marked in blue Marked collection context elements Find profile in the main window from the info form New hotkeys in the info form: up, down, find, enter New hotkey in the main window: enter New list refill algo Added copying user pictures from all channels Changed view modes Changed comparer and ToString of UserDataBase New parameter added to channels stats (my users) Added view mode "details" Fixed twitter files overriding Fixed full parsing of reddit posts Fixed Insta timers and minors Fixed library fatal Removed UserDataBind comparer override Added GetUserMediaOnly for reddit users from channels Added Reddit availability check with DownDetector Added PLUGINS
This commit is contained in:
36
SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb
Normal file
36
SCrawler.PluginProvider/Interfaces/IPluginContentProvider.vb
Normal file
@@ -0,0 +1,36 @@
|
||||
' Copyright (C) 2022 Andy
|
||||
' This program is free software: you can redistribute it and/or modify
|
||||
' it under the terms of the GNU General Public License as published by
|
||||
' the Free Software Foundation, either version 3 of the License, or
|
||||
' (at your option) any later version.
|
||||
'
|
||||
' This program is distributed in the hope that it will be useful,
|
||||
' but WITHOUT ANY WARRANTY
|
||||
Namespace Plugin
|
||||
Public Interface IPluginContentProvider
|
||||
Event ProgressChanged(ByVal Count As Integer)
|
||||
Event TotalCountChanged(ByVal Count As Integer)
|
||||
Property Thrower As IThrower
|
||||
Property LogProvider As ILogProvider
|
||||
Property Settings As ISiteSettings
|
||||
Property Name As String
|
||||
Property ID As String
|
||||
Property ParseUserMediaOnly As Boolean
|
||||
Property UserDescription As String
|
||||
Property ExistingContentList As List(Of PluginUserMedia)
|
||||
Property TempPostsList As List(Of String)
|
||||
Property TempMediaList As List(Of IPluginUserMedia)
|
||||
Property UserExists As Boolean
|
||||
Property UserSuspended As Boolean
|
||||
Property IsSavedPosts As Boolean
|
||||
Property SeparateVideoFolder As Boolean
|
||||
Property DataPath As String
|
||||
Property PostsNumberLimit As Integer?
|
||||
Function ExchangeOptionsGet() As Object
|
||||
Sub ExchangeOptionsSet(ByVal Obj As Object)
|
||||
Sub XmlFieldsSet(ByVal Fields As List(Of KeyValuePair(Of String, String)))
|
||||
Function XmlFieldsGet() As List(Of KeyValuePair(Of String, String))
|
||||
Sub GetMedia()
|
||||
Sub Download()
|
||||
End Interface
|
||||
End Namespace
|
||||
47
SCrawler.PluginProvider/Interfaces/ISiteSettings.vb
Normal file
47
SCrawler.PluginProvider/Interfaces/ISiteSettings.vb
Normal file
@@ -0,0 +1,47 @@
|
||||
' Copyright (C) 2022 Andy
|
||||
' This program is free software: you can redistribute it and/or modify
|
||||
' it under the terms of the GNU General Public License as published by
|
||||
' the Free Software Foundation, either version 3 of the License, or
|
||||
' (at your option) any later version.
|
||||
'
|
||||
' This program is distributed in the hope that it will be useful,
|
||||
' but WITHOUT ANY WARRANTY
|
||||
Imports System.Drawing
|
||||
Namespace Plugin
|
||||
Public Interface ISiteSettings
|
||||
Enum Download As Integer
|
||||
Main = 0
|
||||
SavedPosts = 1
|
||||
Channel = 2
|
||||
End Enum
|
||||
ReadOnly Property Icon As Icon
|
||||
ReadOnly Property Image As Image
|
||||
ReadOnly Property Site As String
|
||||
Function GetUserUrl(ByVal UserName As String, ByVal Channel As Boolean) As String
|
||||
Function IsMyUser(ByVal UserURL As String) As ExchangeOptions
|
||||
Function IsMyImageVideo(ByVal URL As String) As ExchangeOptions
|
||||
Function GetSpecialData(ByVal URL As String) As IEnumerable(Of IPluginUserMedia)
|
||||
Function GetInstance(ByVal What As Download) As IPluginContentProvider
|
||||
#Region "XML Support"
|
||||
Sub Load(ByVal XMLValues As IEnumerable(Of KeyValuePair(Of String, String)))
|
||||
#End Region
|
||||
#Region "Initialization"
|
||||
Sub BeginInit()
|
||||
Sub EndInit()
|
||||
Sub BeginUpdate()
|
||||
Sub EndUpdate()
|
||||
#End Region
|
||||
#Region "Site availability"
|
||||
Function Available(ByVal What As Download) As Boolean
|
||||
Function ReadyToDownload(ByVal What As Download) As Boolean
|
||||
#End Region
|
||||
#Region "Downloading"
|
||||
Sub DownloadStarted(ByVal What As Download)
|
||||
Sub BeforeStartDownload(ByVal User As Object, ByVal What As Download)
|
||||
Sub AfterDownload(ByVal User As Object, ByVal What As Download)
|
||||
Sub DownloadDone(ByVal What As Download)
|
||||
#End Region
|
||||
Sub OpenSettingsForm()
|
||||
Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean)
|
||||
End Interface
|
||||
End Namespace
|
||||
Reference in New Issue
Block a user