libfprint的Python封装
我在哪里可以找到一个用于libprint的Python封装?如果没有这样的封装,我能自己写一个吗?我该如何开始呢?
3 个回答
2
正如@plaes的回答所说,可以通过GObject Introspection (GI) 在Python中使用libfprint(或libfprint-2)。
你需要安装正确的软件包。在Ubuntu 20.04上,我安装了 python3-gi
:
sudo apt install python3-gi
然后你可以在python3的命令行中这样使用这个库:
import gi
gi.require_version('FPrint', '2.0')
from gi.repository import FPrint, GLib
dir(FPrint)
在结果目录中,你会看到可用的导出名称。有关使用方法,请参考libfprint的API文档:https://fprint.freedesktop.org/libfprint-dev/
这里有一个简单的例子来帮助你入门:
ctx = FPrint.Context()
devices = ctx.get_devices()
print([dev.get_name() for dev in devices])
请注意,还有一个D-Bus API可以用于fprintd:https://fprint.freedesktop.org/fprintd-dev/ref-dbus.html
5
我也为这个问题搜索了很多资料,在尝试使用 libfprint 的过程中学到了很多C/C++的知识。不过有一天,我偶然看到一个人在这里发的问题,然后就发现了这个:
6
因为libfprint(我希望这是你想要的项目)使用了GLib,你可能需要了解一下GObject Introspection。