Ich versuche ein Skript zu machen, das nicht registrierte Domains zurückgeben würde. Ich arbeite in Python 2.7. Ich habe gelesen, dass Modul whois
in der Lage sein sollte, das zu tun, aber der Code, den ich geschrieben habe, erhöht den Fehler.Überprüfen, ob die Domain registriert ist
import whois
domains = ['http://www.example.com']
for dom in domains:
domain = whois.Domain(dom)
print domain.registrar
Dies ist der Fehler:
domain = whois.Domain(dom)
File "C:\Python27\lib\site-packages\whois\_3_adjust.py", line 12, in __init__
self.name = data['domain_name'][0].strip().lower()
TypeError: string indices must be integers, not str
Sie haben keine Ahnung, was falsch sein könnte? Oder können Sie mir eine bessere Lösung geben?
EDIT: Ich versuchte pythonwhois-Modul, aber es gibt auch Fehler zurück.
EDIT2: Nach einer Lösung hier, auf SO habe ich versucht, pywhois
zu verwenden, dieser Code löst auch Fehler.
import pywhois
w = pywhois.whois('google.com')
w.expiration_date
ERROR:
w = pywhois.whois('google.com')
AttributeError: 'module' object has no attribute 'whois'
Hat das Whois-Modul für Sie funktioniert? – Ajay
@Ajay Nein, hat es nicht. Es erhöht den Fehler, etwas mit Subprozess, so dass es ein anderes Problem sein kann. –
Haben Sie Pip zur Installation oder eine andere Methode verwendet? Ich bin auf ubuntu und benutze pip zu installieren. Und dieser Code arbeitete für mich. – Ajay