¿Cómo resolver DNS en Python?

Tengo un script DNS que permite a los usuarios resolver nombres DNS escribiendo nombres de sitios web en un símbolo del sistema de Windows.

He revisado varias guías sobre la resolución de DNS, pero parece que mi script aún no puede resolver los nombres (www.google.com) o (google.com) a la dirección IP.

El script genera un error de

Traceback (most recent call last):
  File "C:\python\main_menu.py", line 37, in ?
    execfile('C:\python\showdns.py')
  File "C:\python\showdns.py", line 3, in ?
    x = input ("\nPlease enter a domain name that you wish to translate: ")
  File "<string>", line 0, in ?
NameError: name 'google' is not defined

El código:

import socket

x = input ("\nPlease enter a domain name that you wish to translate: ")

print ("\n\nThe IP Address of the Domain Name is: "+socket.gethostbyname_ex(x))

x = raw_input("\nSelect enter to proceed back to Main Menu\n")
if x == '1': 
execfile('C:\python\main_menu.py')

Por favor, da consejos sobre los códigos. ¡Gracias!

Respuestas a la pregunta(3)

Su respuesta a la pregunta