http://www.shumeipai.net/resource.php?mod=view&rid=1753
扫码枪Python代码
import threading
import asyncio, evdev,time
from bottle import run,post,request,route
# 按键转字符表 只列出了常用的字符
keymap = {
'KEY_0': u'0',
'KEY_1': u'1',
'KEY_2': u'2',
'KEY_3': u'3',
'KEY_4': u'4',
'KEY_5': u'5',
'KEY_6': u'6',
'KEY_7': u'7',
'KEY_8': u'8',
'KEY_9': u'9',
'KEY_A': u'A',
'KEY_B': u'B',
'KEY_C': u'C',
'KEY_D': u'D',
'KEY_E': u'E',
'KEY_F': u'F',
'KEY_G': u'G',
'KEY_H': u'H',
'KEY_I': u'I',
'KEY_J': u'J',
'KEY_K': u'K',
'KEY_L': u'L',
'KEY_M': u'M',
'KEY_N': u'N',
'KEY_O': u'O',
'KEY_P': u'P',
'KEY_Q': u'Q',
'KEY_R': u'R',
'KEY_S': u'S',
'KEY_T': u'T',
'KEY_U': u'U',
'KEY_V': u'V',
'KEY_W': u'W',
'KEY_X': u'X',
'KEY_Y': u'Y',
'KEY_Z': u'Z',
'KEY_TAB': u'\t',
'KEY_SPACE': u' ',
'KEY_COMMA': u',',
'KEY_SEMICOLON': u';',
'KEY_EQUAL': u'=',
'KEY_LEFTBRACE': u'[',
'KEY_RIGHTBRACE': u']',
'KEY_MINUS': u'-',
'KEY_APOSTROPHE': u'\'',
'KEY_GRAVE': u'`',
'KEY_DOT': u'.',
'KEY_SLASH': u'/',
'KEY_BACKSLASH': u'\\',
'KEY_ENTER': u'\n',
'KEY_CAPSLOCK':u''
}
buf = ""
# 检测到输入时触发
async def print_events(device):
#print ("sadad")
global buf
async for event in device.async_read_loop():
# key_up= 0 key_down= 1 key_hold= 2
if event.type == evdev.ecodes.EV_KEY and event.value == 1:
kv = evdev.events.KeyEvent(event)
# 本次修改的地方, 把事件映射到字符表
#print(kv.keycode,kv.scancode)
if (kv.scancode == evdev.ecodes.KEY_ENTER):
time.sleep(0.1)
print('读到输入: ', buf)
else:
buf += keymap.get(kv.keycode)
@route('/')
def bar():
global buf
a = buf
buf = ""
return a
class myThread (threading.Thread):
def run(self):
run(host='192.168.0.134',port='9000',debug=True,reloader=True)
thread1 = myThread()
thread1.start()
devices = [evdev.InputDevice(path) for path in evdev.list_devices()]
print('发现以下设备: ')
for device in devices:
print(device.path, device.name, device.phys)
for device in devices:
asyncio.ensure_future(print_events(device))
loop = asyncio.get_event_loop()
loop.run_forever()
appinventor网站
链接: appinventor
老巫婆的连接
文字转语音
出现的错误
1 module not founderror:no module named bottle
重新装一下bottle库
pip3 insall bottle
2 运行小强的