1、python 嵌套列表查詢
li=[[1,2],[3,4],[5,6,7]]
print li[2][1] # 輸出6
2、python怎麼判斷某個域名是頂級域名還是二級域名
比如:baidu.com 這是百度的頂級域名
.baidu.com 這是二級域名
www.baidu.com這也是二級域名
..baidu.com 這是三級域名
*.baidu.com 這是泛域名
習慣上這樣區分,一般不稱謂一級域名。個別人說指的一級域名就是頂級域名。
3、如何查詢一個網站下的所有的二級域名?
直接在alexa官網也可以,http://www.alexa.com,不僅可以看到子域名,還可以看到這些子域名各自佔到總流量的百分比 。
通過Alexa和Google來搜索肯定不全面,考慮到每個域名都要正常解析才能被訪問到,所以查詢DNS記錄是最好的辦法。 搜索到了查詢DNS記錄的方法,通過域名的NS伺服器可以用"ls http://domain.com"的方式查詢所有域名相關記錄,但是可惜,現在的DNS伺服器大都禁用了這個功能以提高安全性。
4、怎麼查主域名下的子域名
點擊開始->運行
輸入
nslookup
然後輸入 域名 回車
就可以看到IP了。
R○
5、如何查看一個域名所有的子域名?
域名子域名需要登錄域名的控制面板查看,不能登錄就看不了top
6、python怎麼批量查詢域名備案信息
1.把要反查的ip地址寫在c:\ip.txt裡面,每個ip或者域名一行
2.python reverse_ip.py
3.用Excel打開c:\result.csv,結果就都在裡面了!
7、python怎麼查詢域名備案信息
備案信息在工信部的資料庫裡面吧?這個資料庫沒有API而且有驗證碼等反扒機制
8、如何查詢一個域名的子域名
你可以網頁登錄域名信息備案系統的網址,就可以查到域名信息
9、如何查詢一個網站下的所有的二級域名
1、首先在瀏覽器中搜索「阿里雲」然後找到他們的官網點擊進去。進去阿里雲之後點擊右上菜單中的登錄,然後登陸你域名所在賬戶。
2、登陸過賬號之後,還點擊右上角菜單中的「控制台」。
3、進入控制台之後,點擊「域名」選項。
4、然後選擇你想要解析的域名,點擊右側「解析」。
5、然後在解析設置頁面中,點擊「添加記錄」。
6、然後填寫你解析域名的記錄類型,在主機記錄中填寫你二級域名的記錄,在記錄值中填寫IP地址,然後點擊確定,完成網站域名二級解析。
10、如何使用多線程python掃描二級子域名
日站沒什麼好辦法了往往也會想到其二級域名,於是寫了一個比較簡陋的掃描二級域名的程序
速度一般般,不過如果線程開多了還是可以的
源程序(subdomain.py):
#! /usr/bin/env python
#coding=utf-8
import threading , Queue, optparse, os
import pycurl, StringIO, msvcrt, socket
queue = Queue.Queue()
class ScanThread(threading.Thread):
def __init__(self, queue):
threading.Thread.__init__(self)
self.queue = queue
def run(self):
while 1:
p = self.queue.get()
if p is None:
break
try:
sub_domain = p+'.'+domain
crl = pycurl.Curl()
crl.fa = StringIO.StringIO()
crl.setopt(pycurl.URL,sub_domain)
crl.setopt(pycurl.VERBOSE,0)
crl.setopt(pycurl.FOLLOWLOCATION,1)
crl.setopt(pycurl.MAXREDIRS,5)
crl.setopt(pycurl.CONNECTTIMEOUT, 60)
crl.setopt(pycurl.TIMEOUT, 300)
crl.setopt(crl.WRITEFUNCTION,crl.fa.write)
try:
crl.perform()
ip=socket.gethostbyname(sub_domain)
print sub_domain, ip
content = sub_domain+' '+ip+'\n'
self.writefile(wfile, 'a+', content)
except:
pass
except:
print "error"
self.writefile('F:/py/Domain/log.txt', 'a+', p+'\n')
queue.task_done()
def writefile(self, path, type, content):
f = open(path, type)
f.write(content)
f.close
class ThreadGetKey(threading.Thread):
def run(self):
while 1:
try:
chr = msvcrt.getch()
if chr == 'q':
print "stopped by your action ( q )"
os._exit(1)
else:
continue
except:
os._exit(1)
# now starting...
def main():
parser = optparse.OptionParser('Usages: %prog -d <domain> -r <read> -w <write> -t <thread(s)>')
parser.add_option('-d',dest='domain',type='string',help='the url to query')
parser.add_option('-r',dest='read',type='string',help='the dic file to read default=F:/py/Domain/dic.txt', default='F:/py/Domain/dic.txt')
parser.add_option('-w',dest='write',type='string',help='save the reasults to the catalogue \
default=F:/py/Domain/results.txt', default='F:/py/Domain/results.txt')
parser.add_option('-t',dest='threads',type='int',help='set the thread(s) default=10',default=10)
(options,args) = parser.parse_args()
if options.domain == None:
使用方法:
python subdomain.py -d baidu.com -r dic.txt -w results.txt -t 50
主要影響速度的是這一塊代碼:
try:
crl.perform()
ip=socket.gethostbyname(sub_domain)
print sub_domain, ip
content = sub_domain+' '+ip+'\n'
self.writefile(wfile, 'a+', content)
except:
pass
主要是一開始理解錯了,以為二級域名不存在和某個網頁不存在一樣會返回404代碼,於是想到用返回碼來判斷。
結果後來程序一直出錯,才發現當二級域名不存在的時候返回的是「未找到伺服器」,根本不存在返回碼,於是只能使用一個try來調試錯誤,主要速度也就被這里影響了。當然線程開多了也是可以看到刷屏效果的~~