Skip to main content

Exiftool protocol and stream endpoint plugin to be used with Twisted

Project description

https://travis-ci.org/znerol/txexiftool.svg?branch=master

Exiftool protocol and stream endpoint plugin to be used with twisted.

Usage

from twisted.internet import defer, endpoints, protocol, reactor
from txexiftool import ExiftoolProtocol

@defer.inlineCallbacks
def test():
    # Construct an exiftool endpoint. If the tool is installed in a custom
    # location, specify the path to the binary as the first argument. E.g.
    # 'exiftool:/path/to/exiftool'
    ep = endpoints.clientFromString(reactor, 'exiftool')

    # Instantiate the protocol by connecting to the endpoint
    f = protocol.Factory.forProtocol(ExiftoolProtocol)
    p = yield ep.connect(f)

    # Run commands and retrieve results.
    metadata = yield p.execute('-j', '/usr/share/pixmaps/gtkvim.png')
    print metadata

    # Disconnect
    yield p.loseConnection()

    reactor.stop()

reactor.callWhenRunning(test)
reactor.run()

License

The software is subject to the MIT license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

txExiftool-0.1.3.tar.gz (4.4 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page