_IE.au3 - Öffnen einer Yahoo E-Mail

  • Hallo Leute,

    und zwar suche ich mit einem Yahoo Bot bestimmte Emails in meinem Postfach und möchte diese dann öffnen.
    Ich habe z.B. eine E-Mail vom Absender "test@test.de". Ich mach also eine Schleife über alle Divs der Seite und möchte anschließend auf das Div mit dem Text "test@test.de" klicken, um die E-Mail zu öffnen.

    Es findet zwar das Div bzw. die Nachricht, aber der Klick darauf lässt die E-Mail irgendwie nicht öffnen. :/ Weiß einer warum ?

    Testaccount:
    EMail: mustermannmax86@yahoo.de
    PW: MusterTest

    [autoit]

    ; Check if mail from [email='test@test.de'][/email] is there
    Local $oMailDivs = _IETagNameGetCollection($oIE, "div")
    Local $bMailArrived = False
    For $oMailDiv In $oMailDivs
    If StringInStr($oMailDiv.innerText, "test@test.de") Then
    $bMailArrived = True
    msgbox(64, "", "Mail found.")
    _IEAction($oMailDiv, "click")
    _IELoadWait($oIE)
    ExitLoop
    EndIf
    Next

    [/autoit]
  • Da er im oberen Beispiel, mehrere Divs findet, habe ich es nun auch mal mit einer Regex versucht, um wirklich DAS EINE div zu finden, was aber auch nicht klappen möchte. :/

    [autoit]

    ; Check if youtube mail is there
    Local $oMailDivs = _IETagNameGetCollection($oIE, "div")
    Local $bMailArrived = False
    For $oMailDiv In $oMailDivs
    Local $bMailDivFound = StringRegExp($oMailDiv.innerHTML, "(?s)(?i)^<div class=""fixed start"" role=presentation>\s*<div class=""cbox.*?Yahoo!</div>.*?Willkommen bei Yahoo!</div>\s*<div class=date", 0)
    If $bMailDivFound = 1 Then
    $bMailArrived = True
    _IEAction($oMailDiv, "click")
    _IELoadWait($oIE)
    ExitLoop
    EndIf
    Next

    [/autoit]
  • Hmm, ich habe es nun auch mal mit WinHTTP probiert das Emailfach + die E-Mail zu öffnen, was auch nicht klappen mag. :(

    Er geht so zwar in den Posteingang hinein, aber nicht in den Nachrichteneingang, wo ich überprüfen kann ob Nachricht x bereits angekommen ist, um diese anschließend zu öffnen. :(

    Spoiler anzeigen
    [autoit]

    #include <WinHTTP.au3>

    [/autoit] [autoit][/autoit] [autoit]

    HotKeySet("+{ENTER}", "_openMail")

    [/autoit] [autoit][/autoit] [autoit]

    While 1
    WEnd

    [/autoit] [autoit][/autoit] [autoit]

    Func _openMail()
    Local $h_session = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.1; WOW64; rv:5.0) Gecko/20100101 Firefox/5.0")
    Local $h_connect = _WinHttpConnect($h_session, "www.yahoo.de")
    Local $sHTML = _WinHttpSimpleRequest($h_connect, "GET", "/")

    [/autoit] [autoit][/autoit] [autoit]

    Local $sReferer = "http://de.yahoo.com/"
    $sHTML = _WinHttpSimpleRequest($h_connect, "GET", "/_ylt=Atz.6eoiLAjiKELQ8r2RLysqrK5_/SIG=152nkdadm/EXP=1316256909/**https%3A//login.yahoo.com/config/login%3F.src=fpctx%26.intl=de%26.pd=c%253D6T7evjap2e6CwWSb86QVdqk-%26.done=http%253A%252F%252Fde.yahoo.com%252F", $sReferer)
    Sleep(500)

    [/autoit] [autoit][/autoit] [autoit]

    $h_connect = _WinHttpConnect($h_session, "login.yahoo.com")
    $sReferer = "https://login.yahoo.com/config/login?.src=fpctx&.intl=de&.pd=c%3D6T7evjap2e6CwWSb86QVdqk-&.done=http%3A%2F%2Fde.yahoo.com%2F"
    Local $sPost = ".tries=1&.src=fpctx&.md5=&.hash=&.js=&.last=&promo=&.intl=de&.bypass=&.partner=&.u=eb0fh15776b1m&.v=0&.challenge=T9Gf6M.TsPBdHTh.w23rRhXBBaa9&.yplus=&.emailCode=&pkg=&stepid=&.ev=&hasMsgr=0&.chkP=Y&.done=http%3A%2F%2Fde.yahoo.com%2F&.pd=fpctx_ver%3D0%26c%3D6T7evjap2e6CwWSb86QVdqk-%26ivt%3D%26sg%3D&.ws=0&.cp=0&pad=1&aad=1&login=mustermannmax86%40yahoo.de&passwd=MusterTest&.save=&passwd_raw="
    $sHTML = _WinHttpSimpleRequest($h_connect, "POST", "/config/login?", $sReferer, $sPost)
    Sleep(500)

    [/autoit] [autoit][/autoit] [autoit]

    $h_connect = _WinHttpConnect($h_session, "de.yahoo.com")
    $sReferer = "http://de.yahoo.com/"
    $sHTML = _WinHttpSimpleRequest($h_connect, "GET", "/_ylt=Apg73SdBn_GBG8pBDim9HPQqrK5_/SIG=11rjdbon1/EXP=1316257754/**http%3A//de.mg41.mail.yahoo.com/dc/launch")
    Sleep(200)

    [/autoit] [autoit][/autoit] [autoit]

    FileWrite("test.html", $sHTML)

    [/autoit] [autoit][/autoit] [autoit]

    _WinHttpCloseHandle($h_connect)
    _WinHttpCloseHandle($h_session)
    EndFunc

    [/autoit]