Skip to main content

fetch synonyms from various web services

Project description

CLI tool to extract synonyms/antonyms from online services, which formats them into dict structures (word|alt :: definition; etc.) suitable for ding.

img

It's fairly basic, and not all result sets are structured alike. Furthermore the extraction schemes aren't likely to last for long (web scraping is typically a maintenance task).
Only scans for singular words (most services wouldn't return results otherwise). And might yield error messages for charset issues as well.

SYNTAX

dingonyms --merriamwebster "find"
Parameter Aliases Class
--thesaurus -t --thes EN
--merriamwebster -mw --merr --webster --merweb EN
--synonym -s --syn --synonym.com EN
--reverso --rev // -fr -es -it -pt -nl -ru -jp EN/**
--wordhippo -hippo --wordhip EN
--mobythesaurus -mby --moby EN
--urban -u --urb --ubn LEXICON
--dictcc --en-es --en-it --de-fr --en-pt DICT
--openthesaurus -ot --othes --open DE
--woxikon -wx --woxi DE
--synonyme_de -sd --desyn DE
--all (-t -mw -syn -rev -ot -wx -urban) MIXED
--en (-t -mw -syn -rev) MIXED
--de (-ot -wx -sd) MIXED
--no-antonyms -na FLAG
--no-headers -nh FLAG
--async --parallel --io FLAG

Flags can be abbreviated and also combined: --thes --merrweb would query two services at once, or --all even all. While --en or --de run through language- specific functions. (See the man page for more details. There is a man page.)

CONFIG IN ~/.dingrc (take care to change 3 to available index)

set searchmeth(3,name) {Synonyms}
set searchmeth(3,type) {3}
set searchmeth(3,dictfile) {}
set searchmeth(3,separator) { :: }
set searchmeth(3,language1) {Group}
set searchmeth(3,language2) {Synonyms}
set searchmeth(3,grepcmd) {dingonyms}
set searchmeth(3,grepopts) {--async --thesaurus --merriamwebster --synonyms}
set searchmeth(3,maxlength) {30}
set searchmeth(3,maxresults) {200}
set searchmeth(3,minlength) {2}
set searchmeth(3,shapedresult) {1}
set searchmeth(3,foldedresult) {0}

You might want to add one entry for each search backend even. (Unique index, title/name, and grepopts --parameter each.)

SETUP (pip3 install -U dingonyms)

You might have to symlink ~/.local/bin/dingonyms into ~/bin after installation. pip-package binaries are often only picked up in terminal/interactive shells.

Hijack as module

Obviously this is priamrily a CLI tool, but can be utilized per monkeypatching:

import dingonyms ls = [] dingonyms.out.alternatives = lambda *x: ls.append(x)

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

dingonyms-0.8-py3-none-any.whl (12.8 kB view details)

Uploaded Python 3

File details

Details for the file dingonyms-0.8-py3-none-any.whl.

File metadata

  • Download URL: dingonyms-0.8-py3-none-any.whl
  • Upload date:
  • Size: 12.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.27.1 setuptools/62.3.2 requests-toolbelt/0.9.1 tqdm/4.58.0 CPython/3.8.2

File hashes

Hashes for dingonyms-0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 13c6bdee3f002f5bbf6985e4dab19bea0e80f8bf50ca014a1234a721dd1bedf7
MD5 ce26e415fbaf7dc224cb06adffd2b2ef
BLAKE2b-256 1e52acf3886ca0fad353e9782a9e4e1caa21a0f3f2781524bb1255a7397d4982

See more details on using hashes here.

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