feat: parse url with js plugins support (#96)
* feat: WIP. add parser functionality and text message handling * fix: use json to marshal js result * feat: add metadata handling and version validation for jsParser * refactor: rename parser package to parsers and restructure parser handling * refactor: core code struct and impl parse task handle * feat: impl parsed download * fix: seek cache file when processing tph picture * feat: implement parsed task handling and progress tracking * feat: enhance task processing with concurrency control and progress tracking * feat: add resource ID generation and improve resource processing handling * feat: improve message formatting in parsed text and progress completion * feat: add example js plugin * feat: implement Twitter parser * fix: twitter parse video json decode error * feat: impl stream mode for parse task
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
package tasktype
|
||||
|
||||
//go:generate go-enum --values --names --flag --nocase
|
||||
// ENUM(tgfiles,tphpics)
|
||||
// ENUM(tgfiles,tphpics,parseditem)
|
||||
type TaskType string
|
||||
|
||||
@@ -16,6 +16,8 @@ const (
|
||||
TaskTypeTgfiles TaskType = "tgfiles"
|
||||
// TaskTypeTphpics is a TaskType of type tphpics.
|
||||
TaskTypeTphpics TaskType = "tphpics"
|
||||
// TaskTypeParseditem is a TaskType of type parseditem.
|
||||
TaskTypeParseditem TaskType = "parseditem"
|
||||
)
|
||||
|
||||
var ErrInvalidTaskType = fmt.Errorf("not a valid TaskType, try [%s]", strings.Join(_TaskTypeNames, ", "))
|
||||
@@ -23,6 +25,7 @@ var ErrInvalidTaskType = fmt.Errorf("not a valid TaskType, try [%s]", strings.Jo
|
||||
var _TaskTypeNames = []string{
|
||||
string(TaskTypeTgfiles),
|
||||
string(TaskTypeTphpics),
|
||||
string(TaskTypeParseditem),
|
||||
}
|
||||
|
||||
// TaskTypeNames returns a list of possible string values of TaskType.
|
||||
@@ -37,6 +40,7 @@ func TaskTypeValues() []TaskType {
|
||||
return []TaskType{
|
||||
TaskTypeTgfiles,
|
||||
TaskTypeTphpics,
|
||||
TaskTypeParseditem,
|
||||
}
|
||||
}
|
||||
|
||||
@@ -53,8 +57,9 @@ func (x TaskType) IsValid() bool {
|
||||
}
|
||||
|
||||
var _TaskTypeValue = map[string]TaskType{
|
||||
"tgfiles": TaskTypeTgfiles,
|
||||
"tphpics": TaskTypeTphpics,
|
||||
"tgfiles": TaskTypeTgfiles,
|
||||
"tphpics": TaskTypeTphpics,
|
||||
"parseditem": TaskTypeParseditem,
|
||||
}
|
||||
|
||||
// ParseTaskType attempts to convert a string to a TaskType.
|
||||
|
||||
Reference in New Issue
Block a user