Skip to main content

Python client for DICT Servers

Project description

Wordbook is a Python asynchronous library to query Dict servers. It implements the main parts of DICT protocol (RFC 2229<https://tools.ietf.org/html/rfc2229>).

The library consists two classes:

  • DictBase: which implements commands from RFC2229.

  • Wordbook: which exposes more abstract methods to find a definition within dictionaries.

Both classes are asynchronous and require Python 3.5+.

Installation

To install from pypi

$ sudo pip install wordbook

or from source:

$ sudo python setup.py install

Examples

Getting information from a server using the DictBase class:

import asyncio
import wordbook


async def main():
    dictb = wordbook.DictBase()
    await dictb.connect()
    await dictb.client('wordbook/server-status.py')
    info = await dictb.show_server()
    for line in info:
        print(line)


if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())
    loop.close()

Output:

dictd 1.12.1/rf on Linux 4.10.0-30-generic
On LT19758: up 07:55:45, 5 forks (0.6/hour)

Database      Headwords         Index          Data  Uncompressed
gcide              203645       3859 kB         12 MB         38 MB
wn                 147311       3002 kB       9247 kB         29 MB
moby-thesaurus      30263        528 kB         10 MB         28 MB

Getting definition of word mock using the WordBookDatabase class:

import asyncio
import wordbook

async def main():
    wb = wordbook.WordBookDatabase('wn')
    await wb.connect()
    lines = await wb.define('mock')
    for line in lines:
        print(line)

if __name__ == "__main__":
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())
    loop.close()

Output:

["mock" wn "WordNet (r) 3.0 (2006)"]
mock
    adj 1: constituting a copy or imitation of something; "boys in
           mock battle"
    n 1: the act of mocking or ridiculing; "they made a mock of him"
    v 1: treat with contempt; "The new constitution mocks all
         democratic principles" [syn: {mock}, {bemock}]
    2: imitate with mockery and derision; "The children mocked their
       handicapped classmate"

You can find more examples in directory example/.

Resources

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

wordbook-1.0.0.tar.gz (4.8 kB view details)

Uploaded Source

File details

Details for the file wordbook-1.0.0.tar.gz.

File metadata

  • Download URL: wordbook-1.0.0.tar.gz
  • Upload date:
  • Size: 4.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for wordbook-1.0.0.tar.gz
Algorithm Hash digest
SHA256 384e866a7b8d29629912773fccce728228f28707a4ab6602112255e50e9048f5
MD5 16a089193dcca1ee09d1ec65f4ba3891
BLAKE2b-256 6dc1326a9f3ed69c4cf2250641fc07c5c9a205ed00af36f715152d16d57e7823

See more details on using hashes here.

Supported by

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