I'm in the progress of developing a Python command line application to log QSOs directly into the QRZ.com logbook.
It's still in its early phase (started today) but it is already able to query call sign data from qrz, list all previous QSOs with that call, ask the user for QSO data and then upload the QSO via the API.
There is no input validation or hamlib/flrig integration implemented yet but it's kinda usable - on an alpha level.
You can find "qrzlogger" here: https://github.com/exitnode/qrzlogger/
Still very beta but I'd love to hear some feedback.