要使用Python从文本文件中提取完全限定域名(FQDNs),你可以使用正则表达式(regex)来匹配可能的域名模式。下面是一个简单的Python脚本示例,它读取一个文本文件,使用正则表达式查找并打印所有可能的FQDNs。
确保你的Python环境已安装。这个脚本不需要额外的库,只用到Python标准库中的 re
模块。
创建一个Python脚本,比如叫做 extract_fqdns.py
,并使用以下代码:
import re
def extract_fqdns(filename):
# 定义一个正则表达式来匹配FQDN
fqdn_pattern = re.compile(r'\b(?:[a-zA-Z0-9-]{1,63}\.){1,127}[a-zA-Z]{2,63}\b')
# 读取文件并搜索FQDNs
with open(filename, 'r') as file:
content = file.read()
fqdns = set(re.findall(fqdn_pattern, content)) # 使用set去除重复项
return fqdns
# 使用函数
if __name__ == "__main__":
filename = 'example.txt' # 你的文件名
fqdns = extract_fqdns(filename)
for fqdn in fqdns:
print(fqdn)
确保你有一个名为 example.txt
的文本文件,其中包含一些文本和FQDNs。例如:
这是一个示例文本,包含一些域名如 example.com, test-site.org, 和 nested.subdomain.example.co.uk。
在命令行中运行你的脚本:
python extract_fqdns.py
这将输出文件中找到的所有FQDNs。
这个脚本提供了一个基本的框架,你可以根据自己的需要进行调整和扩展。例如,你可以修改正则表达式以更精确地匹配你的需求,或者改进错误处理和文件处理逻辑以使其更健壮。
领取专属 10元无门槛券
手把手带您无忧上云