Programmgesteuert sich mit dem Python -Django -Code in Yahoo/MSN (Hotmail) anmelden und die Kontaktliste erhalten?

StackOverflow https://stackoverflow.com/questions/3904929

  •  29-09-2019
  •  | 
  •  

Frage

Gibt es eine Möglichkeit, sich programmgesteuert bei Yahoo!, E -Mail -ID und Kennwort als Eingaben anzugeben und die Kontakte des Benutzers abzurufen?

Ich habe dasselbe mit Google Mail mit schönerSoup.py erreicht

Die API von Yahoo Adressbuch bietet BBAUTH, wodurch der Benutzer auf die Yahoo -Anmeldeseite umgeleitet werden muss. Aber ich suche nach einer Möglichkeit, den Benutzer mit Yahoo ohne Umleitung zu authentifizieren. Ich habe das versucht:http://pypi.python.org/pypi/contactgrabber/0.1

Aber ich bekomme diesen Fehler:

WARNUNG (aus Warnmodul): Datei "C: Python26 lib Site-Packages contactgrabber-0.1-py2.6.Egg contactgrabber base.py", Zeile 31

RunTimeWarning: Tempnam ist ein potenzielles Sicherheitsrisiko für Ihr Programm

Ungültige BenutzerID/Passwort

Ausnahme WindowsError: (2, 'Das System kann die angegebene Datei nicht finden', 'c: docume ~ 1 sjain locals ~ 1 temp 2') in> Ignored

War es hilfreich?

Lösung

Ich habe dieses Problem gelöst, indem ich urllib hier verwendet habe, ist der Code:

Loginurl = "https://login.yahoo.com/config/login?" Exporturl = "http://address.yahoo.com/"

Def Import_yahoo_Contacts (Login, Passwd):

try :
    form_data = {'login' : login, 'passwd' : passwd}
    jar = cookielib.CookieJar()
    opener = urllib2.build_opener(urllib2.HTTPCookieProcessor(jar))
    form_data = urllib.urlencode(form_data)
    resp = opener.open(LoginUrl, form_data)
    resp = opener.open(ExportUrl)
    page = resp.read()

    index = page.find('InitialContacts')
    startjson = page.index('[',index)
    endjson = page.index(']',index)
    Jsondata = page[startjson:endjson+1]

    user_contacts = []
    data =json.JSONDecoder().decode(Jsondata)
    for r in data:
        userfriends = []
        userfriends.append(r.get('contactName'))
        userfriends.append(r.get('email'))
        user_contacts.append(userfriends)

except:
    return []
return user_contacts 

Das funktioniert wirklich für mich :)

Andere Tipps

Sie könnten einen schreiben oder einfach verwenden Pinax. Pinax ist eine Sammlung von Werkzeugen, die oben auf Django basieren. Sie haben eine Anwendung, die IMFO (von VCard, Google oder Yahoo) importiert.

Ich schlage vor, Sie verwenden dies, da Sie es nicht beibehalten müssen, um das Neuerfindung des Zyklus zu vermeiden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top