Frage

Ich bin mit zbarcam Barcode von einer Webcam in meinem Webapps zu lesen. Aber da zbarcam am Ende eines \ n anzuzeigen, meine Form ist vorzulegen.

Hier ist, was ich benutze:

read_one.py

#!/usr/bin/python
from sys import argv
import zbar
import webbrowser

# create a Processor
proc = zbar.Processor()

# configure the Processor
proc.parse_config('enable')

# initialize the Processor
device = '/dev/video0'
if len(argv) > 1:
    device = argv[1]
proc.init(device)

# enable the preview window
proc.visible = True

# read at least one barcode (or until window closed)
proc.process_one()

# hide the preview window
proc.visible = False

# extract results
for symbol in proc.results:
    # do something useful with results
    print symbol.data

keyboard.sh

python read_one.py | xvkbd -file -

Wie kann ich entweder entfernen Sie die '\ n' vor dem Barcode Senden die Enter-Taste in xvkbd xvkbd oder deaktivieren?

War es hilfreich?

Lösung

Versuchen Sie folgendes:

printf "$(python read_one.py)" | xvkbd -file -

Andere Tipps

Zum Strippen der Eingabe:

print symbol.data.strip()

Aber ein pipeable Programm, das das tut ist eine Art böse. Sie könnten nur direkt an xvkbd aus Ihrem Programm (und keine Notwendigkeit für Datei, wenn Sie nichts dagegen haben, die Zeichenfolge in args vorbei) an:

import subprocess # at appropriate place
subprocess.call(['xvkbd', '-text', symbol.data.strip()])

Dies vermeidet auch eine andere Shell und Skript auszuführen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top