mirror of
https://github.com/AAndyProgram/SCrawler.git
synced 2026-03-14 15:52:18 +00:00
Added plugins: LPSG, XVIDEOS Updated hosts Deleted IResponserContainer Updated SiteSettingsForm (properties, responser, button, cookies, offset) Updated plugin dependencies Fixed Instagram algo typo
100 lines
4.3 KiB
VB.net
100 lines
4.3 KiB
VB.net
' 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
|
|
Imports PersonalUtilities.Functions.RegularExpressions
|
|
<Manifest("AndyProgram_LPSG")>
|
|
Public Class SiteSettings : Implements ISiteSettings
|
|
Public ReadOnly Property Icon As Icon Implements ISiteSettings.Icon
|
|
Get
|
|
Return My.Resources.Icon32
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property Image As Image Implements ISiteSettings.Image
|
|
Get
|
|
Return My.Resources.IconPic_32
|
|
End Get
|
|
End Property
|
|
Public ReadOnly Property Site As String = "LPSG" Implements ISiteSettings.Site
|
|
Public Property Logger As ILogProvider Implements ISiteSettings.Logger
|
|
Friend ReadOnly Property Responser As Response
|
|
Public Sub New()
|
|
Responser = New Response($"Settings\Responser_LPSG.xml")
|
|
With Responser
|
|
If .File.Exists Then
|
|
.LoadSettings()
|
|
Else
|
|
.CookiesDomain = "www.lpsg.com"
|
|
.Cookies = New CookieKeeper("www.lpsg.com")
|
|
End If
|
|
End With
|
|
End Sub
|
|
Public Sub BeginInit() Implements ISiteSettings.BeginInit
|
|
End Sub
|
|
Public Sub EndInit() Implements ISiteSettings.EndInit
|
|
End Sub
|
|
Public Function GetInstance(ByVal What As ISiteSettings.Download) As IPluginContentProvider Implements ISiteSettings.GetInstance
|
|
Return New UserData
|
|
End Function
|
|
Public Sub Load(ByVal XMLValues As IEnumerable(Of KeyValuePair(Of String, String))) Implements ISiteSettings.Load
|
|
End Sub
|
|
#Region "Download functions"
|
|
Public Sub DownloadStarted(ByVal What As ISiteSettings.Download) Implements ISiteSettings.DownloadStarted
|
|
End Sub
|
|
Public Sub BeforeStartDownload(ByVal User As Object, ByVal What As ISiteSettings.Download) Implements ISiteSettings.BeforeStartDownload
|
|
End Sub
|
|
Public Sub AfterDownload(ByVal User As Object, ByVal What As ISiteSettings.Download) Implements ISiteSettings.AfterDownload
|
|
End Sub
|
|
Public Sub DownloadDone(ByVal What As ISiteSettings.Download) Implements ISiteSettings.DownloadDone
|
|
End Sub
|
|
#End Region
|
|
#Region "Update"
|
|
Public Sub BeginUpdate() Implements ISiteSettings.BeginUpdate
|
|
End Sub
|
|
Public Sub EndUpdate() Implements ISiteSettings.EndUpdate
|
|
End Sub
|
|
Public Sub Update() Implements ISiteSettings.Update
|
|
Responser.SaveSettings()
|
|
End Sub
|
|
#End Region
|
|
Public Sub Reset() Implements ISiteSettings.Reset
|
|
End Sub
|
|
Public Sub OpenSettingsForm() Implements ISiteSettings.OpenSettingsForm
|
|
End Sub
|
|
Public Sub UserOptions(ByRef Options As Object, ByVal OpenForm As Boolean) Implements ISiteSettings.UserOptions
|
|
Options = Nothing
|
|
End Sub
|
|
Public Function GetUserUrl(ByVal UserName As String, ByVal Channel As Boolean) As String Implements ISiteSettings.GetUserUrl
|
|
Return $"https://www.lpsg.com/threads/{UserName}/"
|
|
End Function
|
|
Private ReadOnly UserRegEx As RParams = RParams.DMS(".+?lpsg.com/threads/([^/]+)", 1)
|
|
Public Function IsMyUser(ByVal UserURL As String) As ExchangeOptions Implements ISiteSettings.IsMyUser
|
|
Try
|
|
Dim r$ = RegexReplace(UserURL, UserRegEx)
|
|
If Not r.IsEmptyString Then
|
|
Return New ExchangeOptions(Site, r)
|
|
Else
|
|
Return Nothing
|
|
End If
|
|
Catch ex As Exception
|
|
Return Nothing
|
|
End Try
|
|
End Function
|
|
Public Function IsMyImageVideo(ByVal URL As String) As ExchangeOptions Implements ISiteSettings.IsMyImageVideo
|
|
Return Nothing
|
|
End Function
|
|
Public Function GetSpecialData(ByVal URL As String, ByVal Path As String, ByVal AskForPath As Boolean) As IEnumerable(Of PluginUserMedia) Implements ISiteSettings.GetSpecialData
|
|
Return Nothing
|
|
End Function
|
|
Public Function Available(ByVal What As ISiteSettings.Download) As Boolean Implements ISiteSettings.Available
|
|
Return True
|
|
End Function
|
|
Public Function ReadyToDownload(ByVal What As ISiteSettings.Download) As Boolean Implements ISiteSettings.ReadyToDownload
|
|
Return True
|
|
End Function
|
|
End Class |