如何在域名生成器中调整固定字符串web的位置?
实现方法
核心思路是把web作为独立元素,随机插入到生成的子域名片段列表的任意位置,再统一用分隔符拼接,就能让它出现在子域名组合的任意位置。具体修改如下:
- 先生成
subdomain_count个随机子域名片段 - 随机选择一个位置(开头、中间、末尾都可以)把
web插入到片段列表中 - 用随机分隔符连接整个包含
web的列表,得到完整子域名前缀 - 最后和顶级域名拼接成最终地址
修改后的完整代码(整合变量定义与生成逻辑):
import random # 原有的变量定义 Test = ['cl', 'portal', 'find', 'signin', 'payment', 'update', 'group', 'verification', 'confirm', 'claim', 'summary', 'recovery', 'ssl', 'view', 'support'] delimeters = ['','-', '.'] web = 'web' subdomain_count = 3 # 设置为需求的3 suffix = ['co.id', 'info', 'id', 'com'] output = [] # 写入结果到文件 with open("dictionaries/examples.txt", "w") as Example: for i in range(100): outputs = [] # 生成指定数量的随机子域名片段 for j in range(subdomain_count): outputs.append(random.choice(Test)) # 随机选位置插入web:0到列表长度的整数,覆盖所有可能位置 insert_pos = random.randint(0, len(outputs)) outputs.insert(insert_pos, web) # 用随机分隔符拼接所有片段(含web) subdomain_prefix = random.choice(delimeters).join(outputs) # 拼接顶级域名得到最终地址 addr = '.'.join([subdomain_prefix, random.choice(suffix)]) output.append(addr) Example.write(addr+'\n')
效果说明
当subdomain_count=3时,会生成包含4个片段(3个随机词+1个web)的子域名组合,比如:
- 开头位置:
web-portal.find.update.info - 中间位置:
cl.web.summary.recovery.id - 末尾位置:
signin.payment.update.web.com
内容的提问来源于stack exchange,提问作者Tsukuru
相关产品推荐
相关产品推荐

