2023.1.27.0

Andy
2023-01-27 16:45:50 +03:00
parent 3610742449
commit a34f0bd719
2 changed files with 54 additions and 34 deletions

@@ -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 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
``` 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
```Event ProgressChanged(ByVal Count As Integer)```
@@ -459,6 +459,19 @@ Parse site user data
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
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
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```.
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.
- [```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).
- ```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.
![Twitter settings](https://github.com/AAndyProgram/SCrawler/blob/main/ProgramScreenshots/SettingsSiteTwitter.png)