过期域名批量查询工具(域名状态查询工具)

来源:国外服务器 在您之前已被浏览:1 次
导读:目前正在解读《过期域名批量查询工具(域名状态查询工具)》的相关信息,《过期域名批量查询工具(域名状态查询工具)》是由用户自行发布的知识型内容!下面请观看由(国外主机 - www.2bp.net)用户发布《过期域名批量查询工具(域名状态查询工具)》的详细说明。
笨笨网美国主机,w ww.2 b p .n e t

过期域名批量查询工具(域名状态查询工具)

前言

由于公司有大量域名信息需要定期查看是否需要续期,前期都是人工操作比较耗时、耗力。所以衍生了这个小工具。

实现了查询域名到期时间、并且将近7天内到期的域名在Excel中标红,当然你也可以添加短信提醒和邮件提醒

代码步骤

1、将域名粘贴到指定txt文件中

比如:domain.txt

过期域名批量查询工具(域名状态查询工具)

2、将指定txt文件中内容读取到list中

# 批量读取文件中的域名def read_file(filePath): with open(filePath, "r") as f: # 打开文件 data = f.readlines() # 读取文件 return data

3、通过某网站获取域名到期时间

# 通过某网站获取域名到期时间def get_expiry_date(url_list): url_expiry_date_list = [] for url in url_list: url_expiry_date_dict = {} time.sleep(random.randrange(3)) req_whois = urllib.request.urlopen('http://whois.xxxxxx.com/' + url) result = req_whois.read().decode() html = etree.HTML(result) endTimes = html.xpath('//a[@id="update_a2"]/preceding-sibling::span[1]/text()') if len(endTimes) > 0: endTime = endTimes[0].replace('年', '-').replace('月', '-').replace('日', '') else: errorInfo = html.xpath('//div[@class="IcpMain02"]') endTime = errorInfo[0].xpath('string(.)').strip() url_expiry_date_dict['url'] = url.replace('n', '') url_expiry_date_dict['endTime'] = endTime pprint.pprint(url_expiry_date_dict) url_expiry_date_list.append(url_expiry_date_dict) pprint.pprint(url_expiry_date_list) return url_expiry_date_list

4、将结果写入Excel文件

# 写入Excel文件def write_excel(domain_list): # 创建一个新的文件 with xlsxwriter.Workbook('host_ip.xlsx') as workbook: # 添加一个工作表 worksheet = workbook.add_worksheet('域名信息') # 设置一个加粗的格式 bold = workbook.add_format({"bold": True}) # 分别设置一下 A 和 B 列的宽度 worksheet.set_column('A:A', 50) worksheet.set_column('B:B', 15) # 先把表格的抬头写上,并设置字体加粗 worksheet.write('A1', '域名', bold) worksheet.write('B1', '信息', bold) # 设置数据写入文件的初始行和列的索引位置 row = 1 col = 0 for domain_ex_date in domain_list: url = domain_ex_date['url'] endTime = domain_ex_date['endTime'] currDate = datetime.today().date() try: endDate = datetime.strptime(endTime, "%Y-%m-%d").date() diffDate = endDate - currDate if diffDate.days <= 7: style = workbook.add_format({'font_color': "red"}) else: style = workbook.add_format({'font_color': "black"}) except: style = workbook.add_format({'font_color': "red"}) pprint.pprint(url + ': ' + endTime) worksheet.write(row, col, url, style) worksheet.write(row, col + 1, endTime, style) row += 1

5、运行

urls = read_file('domain.txt')urls_list = get_expiry_date(urls)write_excel(urls_list)

运行结果:

过期域名批量查询工具(域名状态查询工具)

6、完整代码

#!/usr/bin/env python# -*- coding: utf-8 -*-# Author:高效码农import pprintimport timeimport randomimport xlsxwriterfrom datetime import datetimeimport urllib.requestfrom lxml import etree# 批量读取文件中的域名def read_file(filePath): with open(filePath, "r") as f: # 打开文件 data = f.readlines() # 读取文件 return data# 通过某网站获取域名到期时间def get_expiry_date(url_list): url_expiry_date_list = [] for url in url_list: url_expiry_date_dict = {} time.sleep(random.randrange(3)) req_whois = urllib.request.urlopen('http://whois.xxxxxx.com/' + url) result = req_whois.read().decode() html = etree.HTML(result) endTimes = html.xpath('//a[@id="update_a2"]/preceding-sibling::span[1]/text()') if len(endTimes) > 0: endTime = endTimes[0].replace('年', '-').replace('月', '-').replace('日', '') else: errorInfo = html.xpath('//div[@class="IcpMain02"]') endTime = errorInfo[0].xpath('string(.)').strip() url_expiry_date_dict['url'] = url.replace('n', '') url_expiry_date_dict['endTime'] = endTime pprint.pprint(url_expiry_date_dict) url_expiry_date_list.append(url_expiry_date_dict) pprint.pprint(url_expiry_date_list) return url_expiry_date_list# 写入Excel文件def write_excel(domain_list): # 创建一个新的文件 with xlsxwriter.Workbook('host_ip.xlsx') as workbook: # 添加一个工作表 worksheet = workbook.add_worksheet('域名信息') # 设置一个加粗的格式 bold = workbook.add_format({"bold": True}) # 分别设置一下 A 和 B 列的宽度 worksheet.set_column('A:A', 50) worksheet.set_column('B:B', 15) # 先把表格的抬头写上,并设置字体加粗 worksheet.write('A1', '域名', bold) worksheet.write('B1', '信息', bold) # 设置数据写入文件的初始行和列的索引位置 row = 1 col = 0 for domain_ex_date in domain_list: url = domain_ex_date['url'] endTime = domain_ex_date['endTime'] currDate = datetime.today().date() try: endDate = datetime.strptime(endTime, "%Y-%m-%d").date() diffDate = endDate - currDate if diffDate.days <= 7: style = workbook.add_format({'font_color': "red"}) else: style = workbook.add_format({'font_color': "black"}) except: style = workbook.add_format({'font_color': "red"}) pprint.pprint(url + ': ' + endTime) worksheet.write(row, col, url, style) worksheet.write(row, col + 1, endTime, style) row += 1urls = read_file('domain.txt')urls_list = get_expiry_date(urls)write_excel(urls_list)
笨笨网美国主机,w ww.2 b p .n e t
提醒:《过期域名批量查询工具(域名状态查询工具)》最后刷新时间 2025-03-21 11:17:25,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《过期域名批量查询工具(域名状态查询工具)》该内容的真实性请自行鉴别。