国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python 實現域名解析為ip的方法

2020-02-16 01:10:00
字體:
來源:轉載
供稿:網友

今天得了一批域名,需要把域名解析成ip

因為量比較大所以采用了多進程和隊列的方式

from multiprocessing import Process,Queue,Poolimport socketimport multiprocessingimport os  #寫入文件def write(q,lock,filename): while not q.empty():  url = q.get()  print (url)  try:   ip = socket.gethostbyname(url)  except:   ip = "unknow"  print (ip)  with open(filename,'a+') as f:   lock.acquire()      #加鎖防止多個進程寫入會混亂   try:    f.write(url + " " + ip + "/n")   finally:    lock.release() #添加到隊列def readurl(q,n): with open(str(n)+'.txt','r') as f:  lines = f.readlines()  for line in lines:   q.put(line.strip()) return q #根據進程進行拆分txtdef multi(urllist,n): with open(urllist,'r') as f:  lines = f.readlines()  line = int(len(lines)/n)  print (line)  for m in range(0,n):   with open(str(m)+'.txt','a+') as f1:    for i in range(line*m,line*(m+1)):     f1.write(lines[i]) #刪除拆分的txt文件def remove(n): for i in range(0,n):  os.remove(str(i)+'.txt') print ("######清除臨時文件######")  if __name__ == "__main__":  manager = multiprocessing.Manager() q = manager.Queue() lock = manager.Lock() m = 5       #設置掃描進程數 urllist = "url.txt"    #待解析的url filename = "test.txt"   #結果保存的文件名 multi(urllist,m) p = Pool(m) for i in range(m):  p.apply_async(write,args=(readurl(q,i),lock,filename)) p.close() p.join()  remove(m)  print ("#######全部文件采集完成########")

以上這篇Python 實現域名解析為ip的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 上蔡县| 乐山市| 万全县| 鸡东县| 招远市| 霍州市| 西藏| 沂源县| 马公市| 通化市| 安义县| 通江县| 华坪县| 遂宁市| 洪湖市| 突泉县| 长阳| 广州市| 翼城县| 佛山市| 郎溪县| 泸水县| 炉霍县| 仁布县| 南涧| 永新县| 孝感市| 剑河县| 定结县| 玉门市| 普陀区| 彭阳县| 城固县| 沙坪坝区| 理塘县| 广宗县| 汤原县| 安溪县| 双鸭山市| 甘肃省| 光山县|