欢迎您来到潮人地东莞seo博客,本站专业免费分享多元化的seo网站优化技术干货以及解答seo各种常见问题的博客网站

热门关键词: seo优化 seo推广 seo技术 seo博客 seo网站推广怎么做 seo怎么做 新手做seo怎么做
当前位置:seo博客首页 > seo技术分享 >

seo技术:Python批量查询域名whois信息(到期域名时间查询小工具)

发布时间:2023-08-20 21:24:02 文章出处:潮人地东莞seo博客 作者:东莞seo博客 阅读数量:

潮人地东莞seo博客小编下面跟大家分享关于seo技术:Python批量查询域名whois信息(到期域名时间查询小工具)等问题,希望seo专员在做seo优化的过程中有所帮助,内容仅供参考。

前言

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

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

代码步骤1、将域名粘贴到指定txt文件中

比如:domain.txt

seo博客相关推荐阅读:seo优化技术:塔城seo网站优化(塔城网站推广)

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

# 批量读取文件中的域名defread_file(filePath):withopen(filePath, "r") asf: # 打开文件data = f.readlines() # 读取文件returndata3、通过某网站获取域名到期时间

# 通过某网站获取域名到期时间 def geseo实战课堂外推快速排名t_expiry_date(url_list): url_expiry_date_list = [] forurl inurl_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[@]/preceding-sibling::span[1]/text()') iflen(endTimes) > 0: endTime = endTimes[0].replace('年', '-').replace('月', '-').replace('日', '') else: errorInfo = html.xpath('//p[@]') 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) returnurl_expiry_date_list4、将结果写入Excel文件

# 写入Excel文件def write_excel(domain_list): # 创建一个新的文件withxlsxwriter.Workbook('host_ip.xlsx') asworkbook: # 添加一个工作表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= 1col= 0fordomain_ex_date indomain_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 ifdiffDate.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+= 15、运行

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

运行结果:

seo技术:Python批量查询域名whois信息(到期域名时间查询小工具)

6、完整代码

#!/usr/bin/env python# -*- coding: utf-8 -*-# Author:高效码农import pprint import time import random import xlsxwriter from datetime import datetime import urllib.request from lxml import etree # 批量读取文件中的域名def read_file(filePath): withopen(filePath, "r") asf: # 打开文件data= f.readlines() # 读取文件returndata# 通过某网站获取域名到期时间defget_expiry_date(url_list): url_expiry_date_list = [] forurlinurl_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[@]/preceding-sibling::span[1]/text()') iflen(endTimes) > 0: endTime = endTimes[0].replace('年', '-').replace('月', '-').replace('日', '') else: errorInfo = html.xpath('//p[@]') endTime = errorInfo[0].xpath('string(.)').strip() url_expiry_date_dict['url'] = url.replace('\n', '') url_expiry_date_dict['endTime'] = endTime pprint.pprin东莞seo优化网站排名t(url_expiry_date_dict) url_expiry_date_list.append(url_expiry_date_dict) pprint.pprint(url_expiry_date_list) returnurl_expiry_date_list # 写入Excel文件defwrite_excel(domain_list): # 创建一个新的文件withxlsxwriter.Workbook('host_ip.xlsx') asworkbook: # 添加一个工作表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= 1col= 0fordomain_ex_date indomain_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 ifdiffDate.days <= 7: style= workbook.add_format({'font_color': "沈阳优化seo排名前十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)

以上是潮人地东莞seo博客跟大家分享关于seo技术:Python批量查询域名whois信息(到期域名时间查询小工具)等问题,希望能对大家有所帮助,若有不足之处,请谅解,我们大家可以一起讨论关于网站seo优化排名的技巧,一起学习,以上内容仅供参考。

阅读全文
本文标题"seo技术:Python批量查询域名whois信息(到期域名时间查询小工具)":http://www.cr-seo.com/jsfx_25476.html
本文版权归潮人地seo博客所有,欢迎转载,但未经作者同意必须在文章页面给出原文连接,否则保留追究法律责任的权利。
标签:
合作伙伴