查询域名是否已被注册
- uv
# On macOS and Linux. curl -LsSf https://astral.sh/uv/install.sh | sh
-
源码安装
uv tool install .
-
通过 Git 仓库安装
uv tool install git+https://github.com/idev-sig/findomain.git@main
# 安装依赖
uv sync
# 修改配置信息(默认 config.json5)
# 可通过 -c / --config 指定配置的文件
uv run findomain -c ./config.json5
# 运行
uv run findomain
# 或者 从网络读取配置信息
DOMAIN_URL=http://0.0.0.0:8000/config.json uv run findomain
# 指定域名
DOMAIN=idev.top uv run findomain
# 或
uv run findomain -d idev.top
查询完成之后,将脚本 scripts/merge.sh
复制到结果目录,执行合并所有结果文件,并生成一个 .csv
文件。
- 可配置环境变量
FD_CONFIG_JSON
作为全局的值(内容格式参考config.json5
) - 设置环境变量
FD_DOMAIN_URL
后,可以从该网址获取域名部分的配置信息,并覆盖本地的配置信息。 - 设置环境变量
FD_LOG_LEVEL
后,可指定日志级别,如FD_LOG_LEVEL=debug
查看配置信息
{
// 设置
"setting": {
// 域名信息获取网址,断点查询使用,即 domain 项
"url": "",
// 查询结果上传到指定服务器
// 比如 https://github.com/dutchcoders/transfer.sh 搭建的站点
// 参数中带有 @,则会被替换成日期
"server_url": "",
// 上传到指定服务器的鉴权信息
// eg: username:password
"server_auth": "",
// 本次查询域名列表保存文件名
"domain_file": "domains.log",
// 最大查询次数
"max_retries": 3,
// 日志级别
// CRITICAL = 50
// FATAL = CRITICAL
// ERROR = 40
// WARNING = 30
// WARN = WARNING
// INFO = 20
// DEBUG = 10
// NOTSET = 0
"log_level": "DEBUG",
// 日志目录
"log_dir": "logs",
// 日志文件名
"log_file": "runtime.log",
// 结果文件名
"result_file": "result.csv"
},
// 域名
"domain": {
// 后缀
"suffixes": "com",
// 长度
"length": 1,
// 组合模式
// 1.纯数字,2.纯字母,3.纯数字+纯字母,4.数字与字母混合,5.自定义字符
// 6.杂米(不含纯数字和字母),7.杂米,自定义字符
"mode": 1,
// 自定义组合字母表
"alphabets": "",
// 起始域名(以此域名开始记录(含),字符长度必须与 length 一致)
"start_char": "",
// 结束域名(以此域名结束记录(含),字符长度必须与 length 一致)
"end_char": "",
// 组合前缀
"prefix": "",
// 组合后缀
"suffix": "",
// 断点续查网址 {"start_char": "", "updated_time": ""}
"resume_url": ""
},
// Whois
"whois": {
// 使用代理(功能未实现)
"proxy": false,
// 默认 Whois 提供商
// west.西部数码(带注册时间),qcloud.腾讯云,zzidc.景安
// 比如: west,qcloud,zzidc
"dnp": ""
},
// 通知
"notify": {
// 提供者,逗号分隔。如 feishu,dingtalk
"providers": "",
// 钉钉
"dingtalk": {
// 钉钉 access_token
"token": "",
// 钉钉 Secret
"secret": ""
},
// 飞书
"feishu": {
// 飞书 Token
"token": "",
// 飞书 Secret
"secret": ""
},
// Lark
"lark": {
// Lark Token
"token": "",
// Lark Secret
"secret": ""
}
}
}
设置 setting.url
后,该网址返回的数据信息
{
// 后缀
"suffixes": "com",
// 长度
"length": 1,
// 组合模式
// 1.纯数字,2.纯字母,3.纯数字+纯字母,4.数字与字母混合,5.自定义字符
// 6.杂米(不含纯数字和字母),7.杂米,自定义字符
"mode": 1,
// 自定义组合字母表
"alphabets": "",
// 起始域名(以此域名开始记录(含),字符长度必须与 length 一致)
"start_char": "",
// 结束域名(以此域名结束记录(含),字符长度必须与 length 一致)
"end_char": "",
// 组合前缀
"prefix": "",
// 组合后缀
"suffix": "",
// 断点续查网址 {"start_char": "", "updated_time": ""}
"resume_url": ""
}
findomain --help
usage: findomain [-h] [-c CONFIG] [-d DOMAIN] [-u URL] [-t TRANSFER] [-p DNP]
Find Domain Tool
options:
-h, --help show this help message and exit
-c, --config CONFIG Config file path
-d, --domain DOMAIN Domain to query
-u, --url URL Config information from url
-s, --server_url SERVER_URL
Server url for uploading query results
-a, --server_auth SERVER_AUTH
Server auth for uploading query results
-p, --dnp DNP Whois providers, eg: west, qcloud, zzidc
-c 指定配置文件路径,如 config.toml 或 config.json5
-d 查询单个域名,如 idev.top。可通过环境变量设置FD_DOMAIN
-u 从网络获取域名(domain
)部分信息,如 http://0.0.0.0:8000/domain_info.json , 可通过环境变量FD_DOMAIN_URL
设置
-s 上传查询结果的服务器地址,可通过环境变量FD_SERVER_URL
设置。含@
则会替换成日期yyyyMMdd
-a 上传查询结果的服务器鉴权信息,可通过环境变量FD_SERVER_AUTH
设置
-p 指定 Whois 提供商,可通过环境变量FD_DNP
设置