synOCR synOCR - GUI für OCRmyPDF

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
145
Punkte für Reaktionen
41
Punkte
28
Hi @geimist ,
In deinem preview habe ich gelesen das die Benachrichtigung wieder gehen sollen.
Mit dem Thema habe ich mich noch gar nicht beschäftigt. Ok ich lasse mir was per Mail schicken wenn das Backup fertig ist, oder wenn was passiert.
Aber ist es auch möglich eine message zu bekommen wenn ocr ein PDF erstellt hat?
Also nicht wenn es nichts getan hat, sondern wenn vom input was konvertiert worden ist?
Natürlich am liebsten mit dem log im anhang...
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Damit sind die Systembenachrichtigungen im DSM gemeint (oben rechts).
Die sind aber noch nicht individualisiert - es steht also nur drin, DASS ein PDF fertig ist, aber kein Name ect.
 
  • Like
Reaktionen: Gthorsten

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
145
Punkte für Reaktionen
41
Punkte
28
Ok, das heißt wenn das Skript ins Leere läuft, weil nichts im input folder ist, wird nichts versendet? Das würde ja erstmal reichen
 
Zuletzt bearbeitet von einem Moderator:

rmayergfx

Benutzer
Mitglied seit
05. Aug 2013
Beiträge
135
Punkte für Reaktionen
11
Punkte
18
Hallo Stephan,
habe hier ein Problem? Im Logfile steht folgendes:
Docker Test: WARNING: Error loading config file: .dockercfg: $HOME is not defined
Kann man das beheben? OCR scheint einwandfrei zu funktionieren, ich bekomme ein durchsuchbares PDF.
| ==> installation info <== |
-----------------------------------

synOCR-user: root
synOCR-version: 1.1.2
Architecture: x86_64
DSM-build: 25556
Device: 412plus (2958388370)
current Profil: default
DB-version: 4
WARNING: Error loading config file: .dockercfg: $HOME is not defined
Error: No such object: jbarlow83/ocrmypdf:latest
used image (created): jbarlow83/ocrmypdf:latest ()
used ocr-parameter: -srd -l deu
replace search prefix: yes
renaming syntax: §y-§m-§d_§tag_§tit
Symbol for tag marking: #
source for filedate: ocr
ignored dates by search: 2021-02-29;2020-11-31
Docker Test: WARNING: Error loading config file: .dockercfg: $HOME is not defined
OK
Loglevel: normal
Application Directory: /usr/syno/synoman/webman/3rdparty/synOCR
Source directory: /volume1/OCR/input/
Target directory: /volume1/OCR/output/
BackUp directory: /volume1/OCR/Backup/
----------------------------------
| ==> Funktionsaufrufe <== |
----------------------------------
ERROR at line 1241: pagecount_new=$(( $(get_key_value ./etc/counter pagecount) + $pagecount_latest))
ERROR at line 1242: ocrcount_new=$(( $(get_key_value ./etc/counter ocrcount) + 1))
ERROR at line 1243: pagecount_ID_new=$(( $(get_key_value ./etc/counter pagecount_ID${profile_ID}) + $pagecount_latest))
ERROR at line 1244: ocrcount_ID_new=$(( $(get_key_value ./etc/counter ocrcount_ID${profile_ID}) + 1))
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Docker Test: WARNING: Error loading config file: .dockercfg: $HOME is not defined
Das scheint direkt vom Synology Dockerpaket zu kommen, hat aber scheinbar keine negative Auswirkung:
https://www.synology-forum.de/threads/error-nach-docker-update-20-10-3-0552.115190/#post-949475

ERROR at line 1241: pagecount_new=$(( $(get_key_value ./etc/counter pagecount) + $pagecount_latest))
Da ist das Errorlogging zu sensibel. Hier gibt es keinen Fehler. Die Verarbeitung an dieser Stelle habe ich im nächsten Release umgestellt, was diese Meldung umgeht.
 

rmayergfx

Benutzer
Mitglied seit
05. Aug 2013
Beiträge
135
Punkte für Reaktionen
11
Punkte
18
Danke für die schnelle Info. Habe eine 412+, d.h. da kann ich kein DSM7 installieren. Funktioniert das neue Paket dann auch mit DSM6 oder habe ich dann einfach Pech gehabt?

Noch eine Frage, kann man beim Output Path auch einen UNC Pfad eingeben, um z.B. den Output gleich auf ein anderes Share schreiben zu lassen, z.B. ein anderes NAS im gleichen Netzwerk?
 
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Ja, es gibt auch eine Version für DSM6 - allerdings mit BETA-Status (damit es gleichzeitig mit dem DSM7 Paket bei cphub angeboten werden kann - es sind also keine Stabilitäts-, sondern organisatorische Gründe).

… kann man beim Output Path auch einen UNC Pfad eingeben
Nein, weil alle Pfade, welche nicht mit /volume beginnen, sicherheitshalber abgelehnt werden.
Du könntest aber in der Filestation einen Remoteordner mounten und in diesen schreiben.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: rmayergfx

rmayergfx

Benutzer
Mitglied seit
05. Aug 2013
Beiträge
135
Punkte für Reaktionen
11
Punkte
18
Super funktioniert schon mal soweit wie gedacht, jetzt habe ich noch ein kleines Verständnisproblem bei den Tags.
Habe mich am Beispiel HUK24 und Allianz orientiert. Da erhalte ich in der _TagConfig_ dann folgendes:
HUK24_2:
tagname: HUK24
targetfolder: Versicherung
condition: any
subrules:
- searchstring: HUK24
searchtyp: contains
isRegEx: false
source: content
casesensitive: false
Allianz_3:
tagname: Allianz
targetfolder: Versicherung
condition: any
subrules:
- searchstring: Allianz
searchtyp: contains
isRegEx: false
source: content
casesensitive: false

Wäre es da nicht viel einfacher das ganze einfacher zu Strukturieren, oder habe ich da was falsch verstanden:
Versicherung_1:
tagname: Versicherung
targetfolder:
condition: any
subrules:
- searchstring: Allianz;HUK24,R&V,wasauchimmerersgibt
searchtyp: contains
isRegEx: false
source: content
casesensitive: false
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
searchstring muss eindeutig sein - da funktioniert kein OR.
Bitte achte unbedingt auf die korrekten Einrückungen (mittels Leerzeichen). Die sind in deinem Post nicht mehr vorhanden.
 

rmayergfx

Benutzer
Mitglied seit
05. Aug 2013
Beiträge
135
Punkte für Reaktionen
11
Punkte
18
Danke für die Info und dem Hinweis zu den Einrückungen, das hat die Forensoftware automatisch gemacht. Schade, gibt es einen anderen Weg das zu vereinfachen, sonst müssten z.B. für den Tag Versicherung da ja genauso viele Rulenames erstellt werden wie es searchstrings gibt, d.h. bei 10 unterschiedlichen Versicherungen müsste dann das ganze 10x durchdupliziert werden und der jeweilige Name der Gesellschaft eingetragen werden. Da wird das File schnell ziemlich lang und unübersichtlich, zumal der Rulename ja eindeutig sein muss.
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Hinweis zu den Einrückungen, das hat die Forensoftware automatisch gemacht.
Du musst es einfach als YAML-Code posten.

sonst müssten z.B. für den Tag Versicherung da ja genauso viele Rulenames erstellt werden
Nein, nur die Subrules müssen ergänzt werden (also für jedes Suchwort eine Subrule)

YAML:
Versicherung_1:
    tagname: Versicherung
    targetfolder:
    condition: any
    subrules:
    - searchstring: Allianz
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: HUK24
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: R&V
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: wasauchimmerersgibt
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
 

synpi

Benutzer
Mitglied seit
29. Jun 2016
Beiträge
280
Punkte für Reaktionen
14
Punkte
18
Hallo, habe die Version für DSM 7 manuell installiert und die Aufgabe für root mit dem entsprechenden Script-Start angelegt.

Reicht es aus, das Script nur Einmal auszuführen , also manuell ?

Ich erhalte Warnungen und Fehler, die Umwandlung funktioniert aber:

➜ OCRmyPDF-LOG:
WARNING: Error loading config file: .dockercfg: $HOME is not defined

➜ search tags and date:
no tags defined
fallback RegEx search
Using date format: 1 (1 = dd mm [yy]yy; 2 = [yy]yy mm dd; 3 = mm dd [yy]yy)
Dates found: 2
check date (dd mm [yy]yy): 17.10.2021
➜ valid
day: 17
month:10
year: 2021
ERROR at line 1700: [[ $enhanced_date_search == "yes" ]]

Wofür ist das EXIF-Tool ?
➜ edit metadata FAILED! - exiftool not found! Please install it over cphub.net if you need it

Dann habe ich einen Parameter entdeckt:
--optimize 0 um die Dateigrößenoptimierung zu deaktivieren

und habe diesen eingetragen:
-srd -l deu+eng --optimize 0

Es geht mir darum, eingescannte Dokumente nicht nochmal komprimieren zu lassen, sondern lediglich die Texterkennung im Dokument hinzuzufügen. Wie kann ich erkennen, ob der Parameter funktioniert ?
 

Fink

Benutzer
Mitglied seit
11. Dez 2010
Beiträge
92
Punkte für Reaktionen
5
Punkte
8
Warum denkst du das? Es macht genau das, was dein Ziel ist: OCR. Natürlich kannst du auch unendlich viel Zeit in irgendwelche zusätzlichen Regeln investieren, nach welchen deine PDFs sortiert und umbenannt werden sollen, aber das musst du ja nicht. Einen Freewaretipp für Windows habe ich leider nicht für dich - da habe ich zu wenig Berührungspunkte mit Windows.
Hi @geimist,
am Wochenende habe ich mich nun mal gewagt das Ganze aufzusetzen und einzurichten. Funktioniert soweit super.
Noch eine kurze Frage zu dem Backup Ordner: Dieser wird nur aufgeräumt, wenn auch ein neues PDF verarbeitet wird oder?
Ich habe im Aufgabenplaner den Job zwar minütlich laufen, aber die Dateien im Backup Ordner bleiben trotzdem länger erhalten als konfiguriert (vermutlich weil kein neues PDF verarbeitet wurde)!?

Lg
Fink
 
  • Like
Reaktionen: geimist

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Reicht es aus, das Script nur Einmal auszuführen , also manuell ?
Prinzipiell ja, wenn du Durchläufe nur manuell über die GUI auslösen möchtest. Ich hatte auch schon erlebt, dass man das Startskript mehrmals aufrufen muss, damit die Berechtigungen korrekt gesetzt werden.

Ich erhalte Warnungen und Fehler, die Umwandlung funktioniert aber:

➜ OCRmyPDF-LOG:
WARNING: Error loading config file: .dockercfg: $HOME is not defined
Die Frage kommt immer wieder. Guck mal hier: #2226

Wofür ist das EXIF-Tool ?
Um PDF Metadaten zu schreiben. Wenn du es nicht brauchst, kannst du es auch weglassen.
… Please install it over cphub.net if you need it

Wie kann ich erkennen, ob der Parameter funktioniert ?
Gute Frage. Vergleiche die Qualität und Größe 🤷‍♂️
synOCR hat keinen Einfluss auf die Funktionsweise von OCRmyPDF.

Wenn die Parameter an OCRmyPDF durchgereicht werden und sich dieses nicht beschwert (wäre im Log ersichtlich), gehe ich davon aus, dass sie korrekt angewandt werden.
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
Noch eine kurze Frage zu dem Backup Ordner: Dieser wird nur aufgeräumt, wenn auch ein neues PDF verarbeitet wird oder?
Das ist korrekt, weil die Aufräumroutine ein Teil des Hauptprogramms ist, welches aber bei leerem Inputverzeichnis nicht aufgerufen wird.
 
  • Like
Reaktionen: Fink

rmayergfx

Benutzer
Mitglied seit
05. Aug 2013
Beiträge
135
Punkte für Reaktionen
11
Punkte
18
YAML:
Code:
Versicherung_1:
    tagname: Versicherung
    targetfolder:
    condition: any
    subrules:
    - searchstring: Allianz
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: HUK24
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: R&V
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
    - searchstring: wasauchimmerersgibt
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
Hallo Stephan,

dazu noch eine Frage zu targetfolder. Habe gesehen, das ich hier z.B. Versicherung eintragen könnte, d.h. sofern noch nicht vorhanden erstellt er nun einen Ordner Versicherung und legt dort alle per searchstring definierten PDF automatisch ab. Kann man das erweitern, das er auch automatisch dort die Unterordner mit dem jeweiligen Namen erstellt, z.B. Versicherungen/HUK24? Kann man auch mehrfache Tags verwenden, damit dann z.B. im Dateinamen zusätzlich Versicherung_HUK24.....pdf auftaucht?
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.385
Punkte für Reaktionen
1.199
Punkte
234
In dem Fall solltest du für jeden Tag eine eigene Hauptregel erstellen. Dann hast du die nötige Freiheit, den Pfadnamen individuell anpassen zu können.
YAML:
Versicherung_1:
    tagname: HUK
    targetfolder: /Versicherung/HUK/
    condition: any
    subrules:
    - searchstring: HUK
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false
Versicherung_2:
    tagname: Allianz
    targetfolder: /Versicherung/Allianz/
    condition: any
    subrules:
    - searchstring: Allianz
      searchtyp: contains
      isRegEx: false
      source: content
      casesensitive: false

Kann man das erweitern, das er auch automatisch dort die Unterordner mit dem jeweiligen Namen erstellt, z.B. Versicherungen/HUK24? Kann man auch mehrfache Tags verwenden, damit dann z.B. im Dateinamen zusätzlich Versicherung_HUK24.....pdf auftaucht?
Einfach zusätzliche Regeln erstellen. Tags aller erfüllten Regeln landen im Namen (sofern §tag in der Umbenennungssyntax eingebunden ist).
 

synpi

Benutzer
Mitglied seit
29. Jun 2016
Beiträge
280
Punkte für Reaktionen
14
Punkte
18
Habe dies als eMail erhalten, was ist da zu tun ?

Error: no such column: DB_Version
/upgradeconfig.sh: line 80: [: -eq: unary operator expected
Error: no such column: DB_Version
/upgradeconfig.sh: line 125: [: -eq: unary operator expected
Error: no such column: DB_Version
/upgradeconfig.sh: line 158: [: -eq: unary operator expected
Error: no such column: DB_Version
/upgradeconfig.sh: line 191: [: -eq: unary operator expected
synOCR wurde gestartet ...
Bitte warten, bis die Dateien fertig abgearbeitet wurden.
 

Gthorsten

Benutzer
Mitglied seit
22. Mai 2021
Beiträge
145
Punkte für Reaktionen
41
Punkte
28
Kann mir mal jemand einen Tipp geben?
Wenn ich synocr von Hand starte, klappt alles.
Mache ich das über den Planer kommt folgendes Log.
synOCR-user: admina synOCR-user is admin: yes synOCR-version: 1.1.903 Architecture: x86_64 DSM-build: 42218 Device: 218plus (3209742122) current Profil: Office DB-version: 4 Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/jbarlow83/ocrmypdf:v7.3.1/json": dial unix /var/run/docker.sock: connect: permission denied used image (created): jbarlow83/ocrmypdf:v7.3.1 () used ocr-parameter: -srd -l deu search prefix: replace search prefix: yes renaming syntax: §y-§m-§d_§tag_§tit Symbol for tag marking: # Document split pattern: source for filedate: ocr ignored dates by search: 2021-02-29;2020-11-31;1965-10-27;2020-10-01 PATH-Variable: /sbin:/bin:/usr/sbin:/usr/bin:/usr/syno/sbin:/usr/syno/bin:/usr/local/sbin:/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/syno/bin:/usr/syno/sbin:/usr/local/bin:/opt/usr/bin:/usr/syno/synoman/webman/3rdparty/synOCR/bin Docker Test: OK Loglevel: debug Application Directory: /usr/syno/synoman/webman/3rdparty/synOCR Source directory: /volume1/homes/xxxx/Dokumente/PaperlessOfficeIn/_inbox/ Target directory: /volume1/homes/xxxx/Drive/PaperlessOfficeOut/ BackUp directory: /volume1/homes/xxxx/Dokumente/PaperlessOfficeIn/_back/ ---------------------------------- | ==> Funktionsaufrufe <== | ---------------------------------- show files in INPUT with transcoded special characters @eaDir$ Scan_20220117_110910.pdf$ (pages counted with pdfinfo) PROCESSING: ➜ Scan_20220117_110910.pdf (Mon Jan 17 11:15:01 CET 2022) temp. target file: /tmp/tmp.R4Rj5o4SNE/Scan_20220117_110910.pdf [runtime up to now: 00:00:00] ➜ OCRmyPDF-LOG: -srd -l deu -v2 docker: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post "http://%2Fvar%2Frun%2Fdocker.sock/v1.24/containers/create?name=synOCR": dial unix /var/run/docker.sock: connect: permission denied. See 'docker run --help'. ← OCRmyPDF-LOG-END [runtime up to now: 00:00:02] ┖➜ failed! (target file is empty or not available) ----------------------------------- | ==> synOCR ENDE <== | -----------------------------------

Danke für Tips

Muss im Planer der user root gewählt werden ? Ich habe den gleich user gewählt mit dem ich es über den Desktop starte...
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat