mirror of
https://github.com/AAndyProgram/SCrawler.git
synced 2026-03-15 16:22:17 +00:00
2023.1.27.0
85
Plugins.md
85
Plugins.md
@@ -150,40 +150,6 @@ interface ISiteSettings
|
|||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
``` CSharp
|
|
||||||
interface IPluginContentProvider : IDisposable
|
|
||||||
{
|
|
||||||
delegate void ProgressChangedEventHandler(int Count);
|
|
||||||
event ProgressChangedEventHandler ProgressChanged;
|
|
||||||
delegate void TotalCountChangedEventHandler(int Count);
|
|
||||||
event TotalCountChangedEventHandler TotalCountChanged;
|
|
||||||
IThrower Thrower {get; set;};
|
|
||||||
ILogProvider LogProvider {get; set;};
|
|
||||||
ISiteSettings Settings {get; set;};
|
|
||||||
string Name {get; set;};
|
|
||||||
string ID {get; set;};
|
|
||||||
bool ParseUserMediaOnly {get; set;};
|
|
||||||
string UserDescription {get; set;};
|
|
||||||
List<IUserMedia> ExistingContentList {get; set;};
|
|
||||||
List<string> TempPostsList {get; set;};
|
|
||||||
List<IUserMedia> TempMediaList {get; set;};
|
|
||||||
bool UserExists {get; set;};
|
|
||||||
bool UserSuspended {get; set;};
|
|
||||||
bool IsSavedPosts {get; set;};
|
|
||||||
bool SeparateVideoFolder {get; set;};
|
|
||||||
string DataPath {get; set;};
|
|
||||||
Nullable<int> PostsNumberLimit {get; set;};
|
|
||||||
Nullable<DateTime> DownloadDateFrom {get; set;};
|
|
||||||
Nullable<DateTime> DownloadDateTo {get; set;};
|
|
||||||
object ExchangeOptionsGet();
|
|
||||||
void ExchangeOptionsSet(object Obj);
|
|
||||||
void XmlFieldsSet(List<KeyValuePair<string, string>> Fields);
|
|
||||||
List<KeyValuePair<string, string>> XmlFieldsGet();
|
|
||||||
void GetMedia();
|
|
||||||
void Download();
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
### Site
|
### Site
|
||||||
|
|
||||||
Site name. This ReadOnly property must only provide the name of the site. For example: for instagram.com you should set the site name ```Instagram```. The first letter must be uppercase.
|
Site name. This ReadOnly property must only provide the name of the site. For example: for instagram.com you should set the site name ```Instagram```. The first letter must be uppercase.
|
||||||
@@ -366,6 +332,40 @@ If the ```OpenForm``` argument = ```True```, your options form **must** be opene
|
|||||||
|
|
||||||
## IPluginContentProvider
|
## IPluginContentProvider
|
||||||
|
|
||||||
|
``` CSharp
|
||||||
|
interface IPluginContentProvider : IDisposable
|
||||||
|
{
|
||||||
|
delegate void ProgressChangedEventHandler(int Count);
|
||||||
|
event ProgressChangedEventHandler ProgressChanged;
|
||||||
|
delegate void TotalCountChangedEventHandler(int Count);
|
||||||
|
event TotalCountChangedEventHandler TotalCountChanged;
|
||||||
|
IThrower Thrower {get; set;};
|
||||||
|
ILogProvider LogProvider {get; set;};
|
||||||
|
ISiteSettings Settings {get; set;};
|
||||||
|
string Name {get; set;};
|
||||||
|
string ID {get; set;};
|
||||||
|
bool ParseUserMediaOnly {get; set;};
|
||||||
|
string UserDescription {get; set;};
|
||||||
|
List<IUserMedia> ExistingContentList {get; set;};
|
||||||
|
List<string> TempPostsList {get; set;};
|
||||||
|
List<IUserMedia> TempMediaList {get; set;};
|
||||||
|
bool UserExists {get; set;};
|
||||||
|
bool UserSuspended {get; set;};
|
||||||
|
bool IsSavedPosts {get; set;};
|
||||||
|
bool SeparateVideoFolder {get; set;};
|
||||||
|
string DataPath {get; set;};
|
||||||
|
Nullable<int> PostsNumberLimit {get; set;};
|
||||||
|
Nullable<DateTime> DownloadDateFrom {get; set;};
|
||||||
|
Nullable<DateTime> DownloadDateTo {get; set;};
|
||||||
|
object ExchangeOptionsGet();
|
||||||
|
void ExchangeOptionsSet(object Obj);
|
||||||
|
void XmlFieldsSet(List<KeyValuePair<string, string>> Fields);
|
||||||
|
List<KeyValuePair<string, string>> XmlFieldsGet();
|
||||||
|
void GetMedia();
|
||||||
|
void Download();
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
### ProgressChanged
|
### ProgressChanged
|
||||||
|
|
||||||
```Event ProgressChanged(ByVal Count As Integer)```
|
```Event ProgressChanged(ByVal Count As Integer)```
|
||||||
@@ -459,6 +459,19 @@ Parse site user data
|
|||||||
|
|
||||||
Download data using parsed information
|
Download data using parsed information
|
||||||
|
|
||||||
|
## IPropertyProvider
|
||||||
|
|
||||||
|
``` CSharp
|
||||||
|
interface IPropertyProvider : IFormatProvider
|
||||||
|
{
|
||||||
|
string PropertyName {get; set;};
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### PropertyName
|
||||||
|
|
||||||
|
The name of the property you are working with
|
||||||
|
|
||||||
## IThrower
|
## IThrower
|
||||||
|
|
||||||
This is an exception thrower. If the user requested to cancel operation or delete user instance, an exception will be thrown. Use the ```IThrower.ThrowAny``` method in your code to stop executing when it's requested!
|
This is an exception thrower. If the user requested to cancel operation or delete user instance, an exception will be thrown. Use the ```IThrower.ThrowAny``` method in your code to stop executing when it's requested!
|
||||||
@@ -562,6 +575,10 @@ I have developed a fully integrated plugin environment. This means that any of y
|
|||||||
|
|
||||||
## Provider
|
## Provider
|
||||||
|
|
||||||
|
Options:
|
||||||
|
- ```FieldsChecker``` - Read below for this option.
|
||||||
|
- ```Interaction``` - If ```True```, the value in the text field will be changed via the provider when the text changes. The default value is ```False```.
|
||||||
|
|
||||||
This attribute indicates that the property is a provider. The provider must be an ```IFormatProvider```.
|
This attribute indicates that the property is a provider. The provider must be an ```IFormatProvider```.
|
||||||
|
|
||||||
There are two working ways: check fields (```FieldsChecker```) and not.
|
There are two working ways: check fields (```FieldsChecker```) and not.
|
||||||
|
|||||||
@@ -133,6 +133,9 @@ The Reddit parser can parse data without cookies, but you can add it if you like
|
|||||||
- [```Authorization```](#how-to-find-twitter-tokens) - Bearer token. Must start with ```Bearer ``` word followed by a space.
|
- [```Authorization```](#how-to-find-twitter-tokens) - Bearer token. Must start with ```Bearer ``` word followed by a space.
|
||||||
- [```Token```](#how-to-find-twitter-tokens) - in this field you need to put ```x-csrf-token```.
|
- [```Token```](#how-to-find-twitter-tokens) - in this field you need to put ```x-csrf-token```.
|
||||||
- ```Saved posts user``` - your personal Reddit username to download your saved posts (bookmarked).
|
- ```Saved posts user``` - your personal Reddit username to download your saved posts (bookmarked).
|
||||||
|
- ```Download GIFs``` - *(default for new users)*
|
||||||
|
- ```GIFs special folder``` - *(default for new users)* Put the GIFs in a special folder. **This is a folder name, not an absolute path** (examples: ```SomeFolderName```, ```SomeFolderName\SomeFolderName2```). This folder(s) will be created relative to the user's root folder.
|
||||||
|
- ```GIF prefix``` - *(default for new users)* This prefix will be added to the beginning of the filename.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user