批量获取域名解析地址socketthread
生活随笔
收集整理的這篇文章主要介紹了
批量获取域名解析地址socketthread
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
import thread
import socket
def getIP(name,lock):
? ? ? ?print '[%s]:%s\n'%(name,socket.gethostbyname(name))
? ? ? ?lock.release() #釋放線程鎖
def main():
?#讀取存放域名的文件,文件是按一行一個域名的方式記錄的
? ? ? ?files = open(r'C:\Users\Administrator\Desktop\python_script\name.txt','r')
? ? ? ?line = files.readlines()
?#定義一個域名的空列表
? ? ? ?hostname = []
?#定義線程鎖的空列表
? ? ? ?locks = []
? ? ? ?for i in line:
? ?#按行讀取文件,由于每行結尾都有一個換行符'\n',需要把'\n'去掉,否則域名不能被識別
? ? ? ? ? ? ? ?if i.endswith('\n'):
? ? ? ? ? ? ? ? ? ? ? ?i = i.split('\n')[0]
? ? ? ? ? ? ? ? ? ? ? ?#print i
? ? ? ? ? ? ? ? ? ? ? ?hostname.append(i)
? ? ? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ? ? ?hostname.append(i)
? ? ? ?#獲取域名的數(shù)量,添加線程鎖
? ? ? ?allhostname = len(hostname)
? ? ? ?for a in range(allhostname):
? ? ? ? ? ? ? ?#分配線程鎖
? ? ? ? ? ? ? ?lock = thread.allocate_lock()
? ? ? ? ? ? ? ?#獲取線程鎖的對象
? ? ? ? ? ? ? ?lock.acquire()
? ? ? ? ? ? ? ?#添加進空列表
? ? ? ? ? ? ? ?locks.append(lock)
? ? ? ?for b in range(allhostname):
? ? ? ? ? ? ? ?#啟動線程
? ? ? ? ? ? ? ?thread.start_new_thread(getIP,(hostname[b],locks[b]))
? ? ? ?for c in range(allhostname):
? ? ? ? ? ? ? ?while locks[c].locked():
? ? ? ? ? ? ? ? ? ? ? ?pass
main()本來沒必要用上線程模塊的,最近剛剛好學到這了,所以就用上了,寫這腳本一是工作上需要,另一個是純粹為了練手
import socket
def getIP(name,lock):
? ? ? ?print '[%s]:%s\n'%(name,socket.gethostbyname(name))
? ? ? ?lock.release() #釋放線程鎖
def main():
?#讀取存放域名的文件,文件是按一行一個域名的方式記錄的
? ? ? ?files = open(r'C:\Users\Administrator\Desktop\python_script\name.txt','r')
? ? ? ?line = files.readlines()
?#定義一個域名的空列表
? ? ? ?hostname = []
?#定義線程鎖的空列表
? ? ? ?locks = []
? ? ? ?for i in line:
? ?#按行讀取文件,由于每行結尾都有一個換行符'\n',需要把'\n'去掉,否則域名不能被識別
? ? ? ? ? ? ? ?if i.endswith('\n'):
? ? ? ? ? ? ? ? ? ? ? ?i = i.split('\n')[0]
? ? ? ? ? ? ? ? ? ? ? ?#print i
? ? ? ? ? ? ? ? ? ? ? ?hostname.append(i)
? ? ? ? ? ? ? ?else:
? ? ? ? ? ? ? ? ? ? ? ?hostname.append(i)
? ? ? ?#獲取域名的數(shù)量,添加線程鎖
? ? ? ?allhostname = len(hostname)
? ? ? ?for a in range(allhostname):
? ? ? ? ? ? ? ?#分配線程鎖
? ? ? ? ? ? ? ?lock = thread.allocate_lock()
? ? ? ? ? ? ? ?#獲取線程鎖的對象
? ? ? ? ? ? ? ?lock.acquire()
? ? ? ? ? ? ? ?#添加進空列表
? ? ? ? ? ? ? ?locks.append(lock)
? ? ? ?for b in range(allhostname):
? ? ? ? ? ? ? ?#啟動線程
? ? ? ? ? ? ? ?thread.start_new_thread(getIP,(hostname[b],locks[b]))
? ? ? ?for c in range(allhostname):
? ? ? ? ? ? ? ?while locks[c].locked():
? ? ? ? ? ? ? ? ? ? ? ?pass
main()本來沒必要用上線程模塊的,最近剛剛好學到這了,所以就用上了,寫這腳本一是工作上需要,另一個是純粹為了練手
轉載于:https://blog.51cto.com/zeping/1194111
總結
以上是生活随笔為你收集整理的批量获取域名解析地址socketthread的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html个人学籍模板,学籍模板老师评语
- 下一篇: 网页中如何使用一些特殊字体