Sisyphe-go is a golang command line application for recursive analysis of directories and files of scientific publishing corpus

@Nacim Nacim authored on 2 Mar 2022
example check if DTD is valid 2 years ago
.dockerignore fix test when run in docker 2 years ago
.gitignore Add xsd validation 1 year ago
Dockerfile check if DTD is valid 2 years ago
README.md add xpath 1 year ago
docker-compose.yml refactor code 2 years ago
go.mod add xpath 1 year ago
go.sum add xpath 1 year ago
main.go add xpath 1 year ago
pdf.go uppercase field on metadata and sleep 2s after process 2 years ago
pdf_test.go convert startAt into timestamp 1 year ago
struct.go add xpath 1 year ago
xml.go add xpath 1 year ago
xml_test.go add xpath 1 year ago
README.md

sisyphe

Sisyphe-GO

Sisyphe is a generic Golang recursive folder analyser terminal application

Sisyphe-pic

Requirements

Tested with Golang 1.17

Works on Linux/OSX/Windows

Mount a corpus folder and :

docker-compose up -d
docker exec -it sisyphe_go_go_1 go run . -n corpusName -c corpuspath -o outputpath

Install it on local

  1. Download the latest Sisyphe-go version
  2. Just do : go build .
  3. ... that's it.

Help

go run . --help Will output help

Options

--help  Output usage
-c      Configuration folder path
-n      Corpus name (default "test")
-o      Output directory where results are written
-p      Corpus path
-w      Counting word on pdf

How it works ?

Just start Sisyphe on a folder with any files in it.

go run . ~/Documents/customfolder/corpus -n corpusname -o outputpath

go run . ~/Documents/customfolder/corpus -n corpusname -c ~/Documents/customfolder/corpusResources -o outputpath

Sisyphe is now working in background with all your computer thread. Just take a coffee and wait , it will prevent you when it's done :)

The results of sisyphe are present @ sisyphe/out/{timestamp}-corpusName/ (errors,info,duration..)

Test

Just run go test

Modules

  • XML Usage of poppler function (pdftotext and pdfinfo)

//"xpath": ["/article/@article-type", "/article/front/article-meta/article-categories/subj-group[@subj-group-type=\"document-type-name\"]/subject"]