nslookupと同じことをしているpythonモジュールはありますか? nslookupを使用して、廃棄するURLのドメインに関する情報を掘り起こす予定です。私はos.sysを使ってnslookupを呼び出すことができることを知っていますが、私はすでにこのためのpythonモジュールがあるかどうか疑問に思っています。 ありがとうございます!nslookupのpythonモジュール
15
A
答えて
7
あなたはhttp://docs.python.org/2/library/socket.html
システム関数呼び出しが、この場合では良い方法ではありませんソケットライブラリを使用する必要があります。
12
あなたは、私は次のコードを使用していDNSPython
import dns.resolver
answers = dns.resolver.query('dnspython.org', 'MX')
for rdata in answers:
print 'Host', rdata.exchange, 'has preference', rdata.preference
14
を使用する必要があります。socket.getfqdn()
は、ホスト名の完全修飾名を返すことができ
import socket
ip_list = []
ais = socket.getaddrinfo("www.yahoo.com",0,0,0,0)
for result in ais:
ip_list.append(result[-1][0])
ip_list = list(set(ip_list))
5
は注意を。例えばhttp://docs.python.org/2/library/socket.html?highlight=socket.getaddrinfo#socket.getfqdn
:参照してください
python -c 'import socket; print(socket.gethostname()); print(socket.getfqdn());'
myserver
myserver.mydomain.local
しかし、結果は/etc/hosts
設定を依存しています。あなたが持っている場合:
$ cat /etc/hosts
127.0.0.1 myserver localhost.localdomain localhost
socket.getfqdn()
の結果は以下のようになります。
python -c 'import socket; print(socket.getfqdn());'
localhost.localdomain
Oooops!それを解決するために、私が知っている唯一の解決策は、以下のよう/etc/hosts
を変更することです:
$ cat /etc/hosts
127.0.0.1 myserver myserver.mydomain.local localhost.localdomain localhost
はそれが役に立てば幸い!
5
問題は、socket.gethostbyname()がただ1つのip-addressを返すことです。 nslookupは、それが持つ数だけ返します。 は、私が使用します。
import subprocess
process = subprocess.Popen(["nslookup", "www.google.com"], stdout=subprocess.PIPE)
output = process.communicate()[0].split('\n')
ip_arr = []
for data in output:
if 'Address' in data:
ip_arr.append(data.replace('Address: ',''))
ip_arr.pop(0)
print ip_arr
それが印刷されます:
['54.230.228.101', '54.230.228.6', '54.230.228.37', '54.230.228.80', '54.230.228.41', '54.230.228.114', '54.230.228.54', '54.230.228.23']
0
を私はのCNAMEを使用してAWSルート53のレコードを追跡する必要がありました。 AKA messaging.myCompany.com
〜moreSpecificMessaging.myCompanyInternal.com
また、私はソケットを使用しますが、もう少し隠された方法です。
import socket
addr1 = socket.gethostbyname_ex('google.com')
print(addr1)
https://docs.python.org/3/library/socket.html#socket.gethostbyname_ex
関連する問題
- 1. nslookupを出力するPythonスクリプト
- 2. Nslookup in Bash Script
- 3. nslookup/host parsing PHP
- 4. domain dns nslookup fail
- 5. nslookupの出力操作
- 6. のpythonモジュール
- 7. Pythonモジュールのコマンドライン
- 8. Pythonモジュールのインストール
- 9. Pythonモジュールのインストール
- 10. PythonのBS4モジュール
- 11. Pythonのモジュール
- 12. WindowsのPythonモジュール
- 13. Pythonモジュールのインポートエラー
- 14. モジュール、Pythonの
- 15. Pythonモジュールのベストプラクティス
- 16. Pythonモジュール
- 17. Pythonモジュール
- 18. nslookup AWSと異なるアドレスを表示
- 19. Pythonモジュールhttplib2とpythonのパス
- 20. C/C++モジュール対Pythonモジュール。
- 21. Pythonのモジュールのアップデート
- 22. のPythonモジュールのインストールエラー
- 23. Pythonモジュールの使用
- 24. インポートのpythonモジュールに
- 25. Pythonモジュールの問題
- 26. python用のinspectモジュール
- 27. Pythonモジュールのインポートが
- 28. OpenCV pythonモジュールのエラー
- 29. Python OSモジュール
- 30. Mosso Pythonモジュール
真と徹底し、これは、ローカルシステムのホスト名/ FQDNを見上げながら。 OPはサイトスクレイピングのために外部DNS名を調べる方法を尋ねた。まだ情報の+1。 – VooDooNOFX