2012-07-23 18 views
14

मेरे पास पाइथन में कोई फ़ंक्शन कैसे हो सकता है जो मेजबाननाम हल करता है और 0 होस्ट होस्ट नहीं करता है।पायथन: जांचें कि कोई होस्टनाम हल हो गया है

मुझे कुछ भी उपयोगी, कोई विचार नहीं मिला?

धन्यवाद,

उत्तर

31

आप इस के लिए socket.gethostbyname() उपयोग कर सकते हैं:

>>> import socket 
>>> socket.gethostbyname('google.com') 
'74.125.224.198' 
>>> socket.gethostbyname('foo')   # no host 'foo' exists on the network 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
socket.gaierror: [Errno 8] nodename nor servname provided, or not known 

आपका समारोह इस प्रकार दिखाई देंगे:

def hostname_resolves(hostname): 
    try: 
     socket.gethostbyname(hostname) 
     return 1 
    except socket.error: 
     return 0 

उदाहरण:

>>> hostname_resolves('google.com') 
1 
>>> hostname_resolves('foo') 
0 
+0

सिर्फ एक है कि देखा मिनट पहले ... मुझे एच की जरूरत है 0 और 1 लौटने के अलावा मेरी कोशिश है। धन्यवाद! – Amir

+1

क्या आपने 'ट्रू' और 'गलत' के बारे में सुना है? https://docs.python.org/2/library/types.html#types.BooleanType –

+1

मुझे लगता है कि उसके पास शायद है, लेकिन सवाल स्पष्ट रूप से 0 और 1 के लिए पूछता है। शायद आपकी टिप्पणी प्रश्न लेखक पर बेहतर है। –

संबंधित मुद्दे