欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python 域名分析工具實現(xiàn)代碼

 更新時間:2009年07月15日 00:20:20   作者:  
用python實現(xiàn)域名分析,數(shù)據來源金玉米
代碼如下:
復制代碼 代碼如下:

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小技巧分享

    這篇文章主要介紹了收集的幾個Python小技巧分享,如獲得當前機器的名字、獲取當前工作路徑、獲取系統(tǒng)的臨時目錄等,需要的朋友可以參考下
    2014-11-11
  • Python中用sleep()方法操作時間的教程

    Python中用sleep()方法操作時間的教程

    這篇文章主要介紹了Python中用sleep()方法操作時間的教程,是Python入門學習中的基礎知識,需要的朋友可以參考下
    2015-05-05
  • python 服務器運行代碼報錯ModuleNotFoundError的解決辦法

    python 服務器運行代碼報錯ModuleNotFoundError的解決辦法

    這篇文章主要介紹了python 服務器運行代碼報錯ModuleNotFoundError的解決辦法,幫助大家排除錯誤,正確的運行代碼,感興趣的朋友可以了解下
    2020-09-09
  • NumPy統(tǒng)計函數(shù)的實現(xiàn)方法

    NumPy統(tǒng)計函數(shù)的實現(xiàn)方法

    這篇文章主要介紹了NumPy統(tǒng)計函數(shù)的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • python操作yaml說明

    python操作yaml說明

    這篇文章主要介紹了python操作yaml說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • Python實現(xiàn)SVM支持向量機的示例代碼

    Python實現(xiàn)SVM支持向量機的示例代碼

    SVM 的目的是在數(shù)據集中找到一條最佳分隔超平面,使得在這個超平面兩側的數(shù)據分別屬于不同的類別,且該超平面與最近的數(shù)據點之間的距離最大。本文將通過Python實現(xiàn)SVM支持向量機,感興趣的可以了解一下
    2023-02-02
  • Python松散正則表達式用法分析

    Python松散正則表達式用法分析

    這篇文章主要介紹了Python松散正則表達式用法,較為詳細的分析了松散正則表達式的概念、功能與相關使用技巧,需要的朋友可以參考下
    2016-04-04
  • Pytorch中使用TensorBoard詳情

    Pytorch中使用TensorBoard詳情

    這篇文章主要介紹了Pytorch中使用TensorBoard詳情,TensorBoard的前段數(shù)據顯示和后端數(shù)據記錄是異步I/O的,即后端程序將數(shù)據寫入到一個文件中,而前端程序讀取文件中的數(shù)據來進行顯示
    2022-06-06
  • NLTK的安裝教程及安裝錯誤解決方案

    NLTK的安裝教程及安裝錯誤解決方案

    NLTK是一款用于自然語言處理的Python庫,安裝過程簡單易懂,只需要使用pip安裝即可。若安裝過程中出現(xiàn)錯誤,可以通過更新pip、安裝必要的依賴項、更換鏡像源等方式解決。
    2023-04-04
  • Flask?的路由Route詳情

    Flask?的路由Route詳情

    在上一篇Flask?入門Web?微框架Hello?Flask中,我們用?Flask?框架寫了一個?Hello?Flask?應用程序,我們了解到?Flask?框架簡潔高效、可以快速上手,接下來將對?Flask?框架的各項功能詳細的介紹一下,本篇文章介紹的是?Flask?的路由(Route),需要的朋友可以參考一下
    2021-11-11

最新評論