EntryPoint

The main entry point into the library module:
def query(
    domain: str,
    force: bool = False,
    cache_file: Optional[str] = None,
    cache_age: int = 60 * 60 * 48,
    slow_down: int = 0,
    ignore_returncode: bool = False,
    server: Optional[str] = None,
    verbose: bool = False,
    with_cleanup_results: bool = False,
    internationalized: bool = False,
    include_raw_whois_text: bool = False,
    return_raw_text_for_unsupported_tld: bool = False,
    timeout: Optional[float] = None,
    cmd: str = "whois",
) -> Optional[Domain]:

domain

force

cache_file

cache_age

slow_down

ignore_returncode

server

verbose

with_cleanup_results

internationalized

include_raw_whois_text

return_raw_text_for_unsupported_tld

timeout

cmd

The command line interface to the module

whoisdomain
    [ -v | --verbose ]
        # set verbose to True, this will be forwarded to whois.query

    [ -I | --IgnoreReturncode ]
        # sets the IgnoreReturncode to True, this will be forwarded to whois.query

    [ -a | --all]
        # test all existing tld currently supported,

    [ -d  | --domain =  " ]
        # only analyze the given domains
        # the option can be repeated to specify more then one domain

    [ -f  | --file =  " ]
        # use the named file to test all domains (one domain per line)
        # lines starting with # or empty lines are skipped, anything after the domain is ignored
        # the option can be repeated to specify more then one file

    [ -D  | --Directory =  " ]
        # use the named directory, ald use all files ending in .txt as files containing domains
        # files are processed as in the -f option so comments and empty lines are skipped
        # the option can be repeated to specify more then one directory

    [ -p | --print ]
    also print text containing the raw output of whois

    [ -R | --Ruleset ]
    dump the ruleset for the tld and exit

    [ -S | --SupportedTld ]
    print all supported top level domains we know and exit

    [ -C  | --Cleanup  ]
    read the input file specified and run the same cleanup as in whois.query , then exit

    # options are exclusive and without any options the whoisdomain program does nothing

    # test one specific file with verbose and IgnoreReturncode
    example: whoisdomain -v -I -f tests/ok-domains.txt 2>2 >out

    # test one specific directory with verbose and IgnoreReturncode
    example: whoisdomain -v -I -D tests 2>2 >out

    # test two domains with verbose and IgnoreReturncode
    example: whoisdomain -v -I -d meta.org -d meta.com 2>2 >out

    # test all supported tld's with verbose and IgnoreReturncode
    example: whoisdomain -v -I -a 2>2 >out

    # test nothing
    example: whoisdomain -v -I 2>2 >out