国产探花免费观看_亚洲丰满少妇自慰呻吟_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的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林站長站。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 涿州市| 察哈| 晋宁县| 图木舒克市| 木里| 通江县| 成都市| 松潘县| 兴城市| 谢通门县| 临泉县| 剑川县| 虎林市| 河池市| 甘肃省| 松潘县| 乳山市| 团风县| 绩溪县| 阳西县| 固始县| 新巴尔虎右旗| 景谷| 祥云县| 穆棱市| 噶尔县| 克东县| 西吉县| 长海县| 胶州市| 嘉义县| 望江县| 武宣县| 库车县| 道孚县| 高安市| 和硕县| 睢宁县| 湛江市| 玛沁县| 承德市|