python 域名分析工具实现代码


Posted in Python onJuly 15, 2009

代码如下:

import sys, urllib 
import datetime,time 
def getDate(): 
strday=datetime.datetime.now().__str__() 
strday=strday.split()[0] 
return strday 
#url = "http://www.kingnic.com/list/2009-06-16.txt" 
def getUrl(dateStr=None): 
baseUrl ="http://www.kingnic.com/list/" 
if dateStr: 
return baseUrl+dateStr+".txt" 
thisDate = getDate(); 
if not thisDate: 
print "Error Date!" 
return None; 
url = baseUrl+thisDate+".txt" 
return url 
def getSource(url): 
source = urllib.urlopen(url).read() 
return source def save(source,filename="domains.txt"): 
fp = open(filename,"w") 
fp.write(source) 
fp.close() 
return True; 
def loadList(fileName="domains.txt"): 
fp = open("domains.txt","r") 
source = fp.readlines() 
fp.close() 
return source; 
def getPrefix(domain): 
return domain.split('.')[0] 
def getPostfix(domain): 
return domain.split('.')[1] 
def hasMidLine(domain): 
if '-' in domain: 
return True 
else: 
return False 
def parser(domains): 
max =4 
min =0 
keyword =('sky','see','job') 
result=[] 
len_num =0; 
mid_line_num =0; 
for domain in domains: 
prefix = getPrefix(domain) 
postfix = getPostfix(domain) 
domainlen = len(prefix) 
if (domainlen < min) or (domainlen > max): 
len_num +=1 
continue 
if hasMidLine(prefix): 
mid_line_num +=1 
continue 
result.append(domain) 
print " log : \n" 
print "all: \t",len(domains) 
print "len not in [%s,%s] \t: %s"%(max,min,len_num) 
print "contain '-' :\t",mid_line_num 
print "remain:\t",len(result) 
return result; 
if __name__ == "__main__": 
url = getUrl() 
source = getSource(url) 
save(source) 
domains =loadList() 
result = parser(domains) 
save("".join(result),"result.txt") 
print("\n\n\nfinished!!")

输出文件:
domains.txt : kingnic.com 据当天释放的 域名;
result.txt    : 符合过滤条件的域名;
log输出:
all: 55500 
len not in [4,0] : 55019 
contain '-' : 32 
remain: 449 
finished!!

对 后缀、长度和有无“-”过滤,过滤条件有点少,其它以后如有需要再加。
Python 相关文章推荐
Python编程中归并排序算法的实现步骤详解
May 04 Python
django开发教程之利用缓存文件进行页面缓存的方法
Nov 10 Python
Python实现在tkinter中使用matplotlib绘制图形的方法示例
Jan 18 Python
wx.CheckBox创建复选框控件并响应鼠标点击事件
Apr 25 Python
Tensorflow分类器项目自定义数据读入的实现
Feb 05 Python
Django中ajax发送post请求 报403错误CSRF验证失败解决方案
Aug 13 Python
Python 字符串类型列表转换成真正列表类型过程解析
Aug 26 Python
浅谈python print(xx, flush = True) 全网最清晰的解释
Feb 21 Python
OpenCV 使用imread()函数读取图片的六种正确姿势
Jul 09 Python
python中if嵌套命令实例讲解
Feb 25 Python
详解解Django 多对多表关系的三种创建方式
Aug 23 Python
为了顺利买到演唱会的票用Python制作了自动抢票的脚本
Oct 16 Python
python 自动提交和抓取网页
Jul 13 #Python
python self,cls,decorator的理解
Jul 13 #Python
python 解析html之BeautifulSoup
Jul 07 #Python
打印出python 当前全局变量和入口参数的所有属性
Jul 01 #Python
python 查找文件夹下所有文件 实现代码
Jul 01 #Python
python 运算符 供重载参考
Jun 11 #Python
python getopt 参数处理小示例
Jun 09 #Python
You might like
php 正则匹配函数体
2009/08/25 PHP
php中将一段数据存到一个txt文件中并显示其内容
2014/08/15 PHP
PHP中比较时间大小实例
2014/08/21 PHP
PHP采用curl模仿用户登陆新浪微博发微博的方法
2014/11/07 PHP
浅析THINKPHP的addAll支持的最大数据量
2015/02/03 PHP
php.ini中的request_order推荐设置
2015/05/10 PHP
Zend Framework教程之请求对象的封装Zend_Controller_Request实例详解
2016/03/07 PHP
10个对初学者非常有用的PHP技巧
2016/04/06 PHP
CI框架支持$_GET的两种实现方法
2016/05/18 PHP
PHP的mysqli_stmt_init()函数讲解
2019/01/24 PHP
PHP+redis实现微博的推模型案例分析
2019/07/10 PHP
PHP date_default_timezone_set()设置时区操作实例分析
2020/05/16 PHP
IE php关于强制下载文件的代码
2008/08/23 Javascript
javascript full screen 全屏显示页面元素的方法
2013/09/27 Javascript
jquery validate在ie8下的bug解决方法
2013/11/13 Javascript
jQuery控制元素显示、隐藏、切换、滑动的方法总结
2015/04/16 Javascript
深入浅出分析javaScript中this用法
2015/05/09 Javascript
基于ajax实现文件上传并显示进度条
2015/08/03 Javascript
NODE.JS跨域问题的完美解决方案
2016/10/20 Javascript
Vue学习笔记进阶篇之多元素及多组件过渡
2017/07/19 Javascript
vue2使用keep-alive缓存多层列表页的方法
2018/09/21 Javascript
JS监听事件的叠加和移除功能
2018/11/19 Javascript
Node使用Selenium进行前端自动化操作的代码实现
2019/10/10 Javascript
[03:44]2014DOTA2国际邀请赛 71专访:DK战队赛前讨论视频遭泄露
2014/07/13 DOTA
Python中常用信号signal类型实例
2018/01/25 Python
Django安装配置mysql的方法步骤
2018/10/15 Python
Spring http服务远程调用实现过程解析
2020/06/11 Python
教你怎样写好自我评价
2013/10/05 职场文书
规划编制实施方案
2014/03/15 职场文书
企业党员公开承诺书
2014/03/26 职场文书
关爱残疾人标语
2014/06/25 职场文书
住房抵押登记委托书
2014/09/27 职场文书
投标承诺函格式
2015/01/21 职场文书
2015年化验室工作总结
2015/04/23 职场文书
2015年全民创业工作总结
2015/07/23 职场文书
手术室消毒隔离制度
2015/08/05 职场文书