rewrite extractor script to not use hard-coded task

This commit is contained in:
Egor Aristov 2025-01-25 12:03:51 +03:00
parent 83f16161a7
commit 6af7289e49
Signed by: egor3f
GPG Key ID: 40482A264AAEC85F
2 changed files with 17 additions and 13 deletions

1
.gitignore vendored
View File

@ -2,3 +2,4 @@
/trash/ /trash/
/todo.md /todo.md
/.env.dev /.env.dev
/task.json

View File

@ -1,30 +1,33 @@
package main package main
import ( import (
"encoding/json"
"github.com/egor3f/rssalchemy/internal/config" "github.com/egor3f/rssalchemy/internal/config"
"github.com/egor3f/rssalchemy/internal/extractors/pwextractor" "github.com/egor3f/rssalchemy/internal/extractors/pwextractor"
"github.com/egor3f/rssalchemy/internal/models" "github.com/egor3f/rssalchemy/internal/models"
"github.com/labstack/gommon/log" "github.com/labstack/gommon/log"
"github.com/yassinebenaid/godump" "github.com/yassinebenaid/godump"
"io"
"os"
) )
func main() { func main() {
log.SetLevel(log.DEBUG) log.SetLevel(log.DEBUG)
log.SetHeader(`${time_rfc3339_nano} ${level}`) log.SetHeader(`${time_rfc3339_nano} ${level}`)
// this code is temporary! taskFile, err := os.Open("task.json")
// todo: rewrite not to use hardcoded tasks if err != nil {
log.Panicf("open file: %v", err)
task := models.Task{ }
URL: "https://vombat.su", //goland:noinspection GoUnhandledErrorResult
SelectorPost: "div.post-body", defer taskFile.Close()
SelectorTitle: "h1 a", fileContents, err := io.ReadAll(taskFile)
SelectorLink: "h1 a", if err != nil {
SelectorDescription: "div.post-content-block p", log.Panicf("read file: %v", err)
SelectorAuthor: "a:has(> span.post-author)", }
SelectorCreated: "div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(1) > div:nth-of-type(2)", var task models.Task
SelectorContent: "div.post-content-block", if err := json.Unmarshal(fileContents, &task); err != nil {
SelectorEnclosure: "article img.object-contain", log.Panicf("unmarshal task: %v", err)
} }
cfg, err := config.Read() cfg, err := config.Read()