{"id":29291004,"url":"https://github.com/hatixntsoa/whois_lookup","last_synced_at":"2025-07-06T07:12:26.897Z","repository":{"id":257800529,"uuid":"863133940","full_name":"hatixntsoa/whois_lookup","owner":"hatixntsoa","description":"A Simple WHOIS Lookup Tool made with Python","archived":false,"fork":false,"pushed_at":"2024-09-25T20:02:52.000Z","size":687,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-25T01:53:59.260Z","etag":null,"topics":["pypi","python","whois-lookup"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/pylookup-tool","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hatixntsoa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-25T19:15:12.000Z","updated_at":"2025-01-09T19:23:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"ff4455f2-fac2-4157-9282-8c5a493ecf53","html_url":"https://github.com/hatixntsoa/whois_lookup","commit_stats":null,"previous_names":["h471x/whois_lookup","hatixntsoa/whois_lookup"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/hatixntsoa/whois_lookup","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hatixntsoa%2Fwhois_lookup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hatixntsoa%2Fwhois_lookup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hatixntsoa%2Fwhois_lookup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hatixntsoa%2Fwhois_lookup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hatixntsoa","download_url":"https://codeload.github.com/hatixntsoa/whois_lookup/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hatixntsoa%2Fwhois_lookup/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263862011,"owners_count":23521362,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["pypi","python","whois-lookup"],"created_at":"2025-07-06T07:12:19.768Z","updated_at":"2025-07-06T07:12:26.869Z","avatar_url":"https://github.com/hatixntsoa.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pylookup Tool\n\n\u003cp align=\"center\"\u003e\n \u003cimg height=\"150\" src=\"https://raw.githubusercontent.com/h471x/whois_lookup/master/imgs/pylookup.png\"/\u003e\n\u003c/p\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n\u003cp\u003e\n\n``pylookup-tool`` is a comprehensive Python-based WHOIS and DNS lookup utility that allows users to gather detailed information about domains, including WHOIS records and DNS details. It supports various TLDs, IDN domains, and provides batch processing capabilities. \n\n\u003c/p\u003e\n\n### Contents\n\n[Features](#features) |\n[Installation](#installation) |\n[Install from PyPI](#option-1-install-from-pypi) |\n[Build from Source](#option-2-build-from-source) |\n[Usage](#usage) |\n[Example Usage](#example-usage) |\n[GUI Usage](#gui-usage) |\n[Usage as a Package](#usage-as-a-package) |\n[Development](#development)\n\n\u003c/div\u003e\n\n## Features\n\n- **Command-Line Interface (CLI)**: Perform WHOIS and DNS lookups directly from the terminal with simple command-line arguments.\n- **WHOIS Lookup**: Retrieve WHOIS information for any given domain, including registrant details, registration dates, and more.\n- **DNS Record Lookup**: Fetch DNS records (A, MX, NS, TXT) for any domain.\n- **Batch Queries**: Perform WHOIS lookups for a list of domains from a file, making it easy to process multiple domains at once.\n- **IDN Support**: Seamlessly handle Internationalized Domain Names (IDNs) using Punycode conversion.\n- **Caching and Rate Limiting**: Utilize in-memory caching and rate limiting to optimize queries and prevent server overload.\n- **Email Alerts**: Set up email notifications for specific WHOIS changes (requires additional configuration).\n- **Extendable Functionality**: Add custom features like reverse WHOIS lookup and WHOIS data comparison.\n- **Graphical User Interface (GUI)**: A user-friendly GUI to perform WHOIS lookups without using the command line.\n\n## Installation\n\n### Option 1: Install from PyPI\n\nTo install `pylookup-tool` directly from PyPI:\n\n```bash\npip install pylookup-tool\n```\n\n### Option 2: Build from Source\n\nFor those who prefer to build it themselves:\n\n1. Clone the repository and navigate to the project directory:\n\n   ```bash\n   git clone https://github.com/h471x/whois_lookup.git\n   cd whois_lookup\n   ```\n\n2. Build the package:\n\n   ```bash\n   python setup.py sdist bdist_wheel\n   ```\n\n3. Install the package:\n\n   ```bash\n   pip install dist/*.whl\n   ```\n\n## Usage\n\nOnce the package is installed, you can use the `pylookup` command from the terminal. The script accepts the following command-line arguments:\n\n- **Domain Lookup**:\n  - `domain`: Specify the domain to perform a WHOIS lookup (e.g., `example.com`).\n\n- **Batch Processing**:\n  - `-b` or `--batch`: Specify a file containing a list of domains for batch processing.\n\n- **DNS Records**:\n  - `--dns`: Include this option to perform a DNS record lookup in addition to the WHOIS lookup.\n\n- **Help Option**:\n  - `-h` or `--help`: Display the help message with all available options.\n\n### Example Usage\n\n1. **Single Domain WHOIS Lookup**:\n   ```bash\n   pylookup example.com\n   ```\n\n2. **WHOIS Lookup with DNS Records**:\n   ```bash\n   pylookup example.com --dns\n   ```\n\n3. **Batch WHOIS Lookup**:\n   ```bash\n   pylookup -b domains.txt\n   ```\n\n4. **Help Option**:\n   For help with command-line options, use:\n   ```bash\n   pylookup -h\n   ```\n\n### GUI Usage\n\nYou can also use the `pylookup-tool` with a graphical user interface (GUI). Here's how to launch the GUI and perform lookups:\n\n1. **Launching the GUI**:\n   To open the GUI, run the following command:\n   ```bash\n   pylookup --gui\n   ```\n\n2. **Using the GUI**:\n   - Enter the domain you want to look up in the text field.\n   - Click the \"Lookup\" button to perform the WHOIS lookup.\n   - The results will be displayed in the text area below.\n\n### Usage as a Package\n\nYou can also import `pylookup-tool` as a package in your own Python projects. Here's how to use it programmatically:\n\n```python\n# Import the WhoisLookup class from the pylookup package\nfrom pylookup.app.core import WhoisLookup\n\n# Create an instance of the WhoisLookup class\nlookup = WhoisLookup()\n\n# Perform a WHOIS lookup for a domain\nresponse = lookup.lookup('example.com')\nprint(response)\n\n# Perform a WHOIS lookup for a domain with DNS records\ndns_response = lookup.lookup('example.com', dns=True)\nprint(dns_response)\n\n# Batch lookup from a file\nlookup.batch_lookup('domains.txt')\n```\n\n## Development\n\nTo modify or extend the functionality, ensure you have the required dependencies installed. You can add new features to the CLI or modify existing functionality as needed.\n\n### Adding New Features\n\n- **Support for More TLDs**: Add new WHOIS servers for additional TLDs in `pylookup/app/servers.py`.\n- **Custom Parsing Logic**: Modify `pylookup/app/parser.py` to handle more complex or custom WHOIS data formats.\n- **Integrate Third-Party APIs**: For features like reverse WHOIS, integrate with third-party APIs (e.g., WhoisXML API) in `pylookup/app/core.py`.\n\n## Contributing\n\nFeel free to fork this repository, open issues, or submit pull requests with improvements or bug fixes. Your contributions help make the `pylookup-tool` better!","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhatixntsoa%2Fwhois_lookup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhatixntsoa%2Fwhois_lookup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhatixntsoa%2Fwhois_lookup/lists"}