inetgetSource bringt keinen Quelltext (.php?v=)

  • Halli hallo,

    Ich befürchte das INetGetSource entweder nicht bei einer .php datei oder dann bei einer .php mit variablem input funktioniert.

    Hat irgendjemand eine idee wie ich das zum laufen bekomme ? Wenn ich den gefilterten wert direkt in die URL eingebe dann funktioniert das.

    Spoiler anzeigen
    [autoit]

    #include<INet.au3>
    #include<INetv2.au3>

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

    $var = "%~3c%U64%@69%O76%U20%E63%L6c%[61%S73%73%K3d%L22%N73%$70%+61%C72%+74%.22%X3e%-3c%.69%66%}72%E61%{6d%W65%@20%B73%X72%P63%.3d%Q22%J68%-74%+74%X70%L3a%K2f%B2f%J73%]74%A72%65%-61%W6d%Y66%+6f%72%V6d%M61%O74%O2e%D63%]6f%V6d%-2f%F65%$6d%T62%E65%K64%*2e%{70%I68%~70%D3f%M76%S3d%!7a%P65%X74%H6d%F61%B6e%I5f%.34%!26%Y77%[3d%J37%S31%{32%M26%68%V3d%34%D34%O35%Y22%X20%K66%[72%{61%+6d%*65%B62%6f%V72%T64%F65%72%S3d%X22%}30%-22%]20%$6d%#61%+72%]67%M69%S6e%Z77%J69%$64%*74%$68%.3d%R22%~30%R22%X20%W6d%D61%R72%~67%W69%}6e%!68%.65%T69%H67%+68%J74%T3d%Q22%-30%H22%]20%-73%~63%B72%~6f%E6c%}6c%C69%!6e%.67%~3d%K22%6e%N6f%R22%F20%-77%P69%Q64%74%Y68%I3d%A22%D37%@31%R32%O22%#20%R68%P65%Q69%!67%F68%S74%J3d%E22%K34%J34%X35%Q22%D3e%~3c%H2f%T69%#66%Y72%A61%.6d%*65%H3e%R3c%{2f%I64%G69%H76%3e%~0d%*0a"

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

    $var2= StringRegExpReplace($var, "[A-Z\~\!\@\#\$\*\{\}\[\]\-\+\.]", "")

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

    ;~ MsgBox(0, "", $var2)

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

    $var2=StringRegExpReplace($var2, "%3c", "")

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

    FileWrite ("Quellcode.txt", _INetGetSource ("http://haldi.square7.ch/test/PHP/unescape.php?v="&$var2))

    [/autoit]


    Es sei denn jemand weis wie ich ohne die .php Datei einen unescape in Autoit hinbekomme ?

    mfg

    Haldi

    Einmal editiert, zuletzt von Haldi (24. April 2012 um 19:46)

  • Ich befürchte das INetGetSource entweder nicht bei einer .php datei oder dann bei einer .php mit variablem input funktioniert.


    Weder, noch. Beides funktioniert. Square7 blockt lediglich AutoIt Clients.

    Hat irgendjemand eine idee wie ich das zum laufen bekomme ? Wenn ich den gefilterten wert direkt in die URL eingebe dann funktioniert das.


    Jap. HttpSetUserAgent() vor dem Aufruf von _InetGetSource() nutzen.

    Es sei denn jemand weis wie ich ohne die .php Datei einen unescape in Autoit hinbekomme ?


    Jap.

    Spoiler anzeigen
    [autoit]

    Func _URIEncode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(BinaryToString(StringToBinary($sData,4),1),"")
    Local $nChar
    $sData=""
    For $i = 1 To $aData[0]
    ;~ ConsoleWrite($aData[$i] & @CRLF)
    $nChar = Asc($aData[$i])
    Switch $nChar
    Case 45, 46, 48-57, 65 To 90, 95, 97 To 122, 126
    $sData &= $aData[$i]
    Case 32
    $sData &= "+"
    Case Else
    $sData &= "%" & Hex($nChar,2)
    EndSwitch
    Next
    Return $sData
    EndFunc

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

    Func _URIDecode($sData)
    ; Prog@ndy
    Local $aData = StringSplit(StringReplace($sData,"+"," ",0,1),"%")
    $sData = ""
    For $i = 2 To $aData[0]
    $aData[1] &= Chr(Dec(StringLeft($aData[$i],2))) & StringTrimLeft($aData[$i],2)
    Next
    Return BinaryToString(StringToBinary($aData[1],1),4)
    EndFunc

    [/autoit]

    Gruß

  • Ach stimmt ja, da war mal was wegen Square7 blockt so ziemlich alles.... völlig vergessen. Danke für die erinnerung.

    Danke für das _URIdecode eigentlich genau das was ich gesucht hab. Aber hab mit der suche nach "unescape" vorwiegened .php probleme gefunden.
    ist schon schöner sowas direkt in AutoIT zu lösen ohne zugriff auf eine externe datei. Ich bin nur leider was unbeholfen was hex werte angeht. die verwirren mich immer so... und vorallem bei mehr als einem auf einmal. Aber das funktioniert so bestens.

    Tausend Dank!