Autoit Facebook Poster :)

  • Hey Leute,

    ich habe einen Facebook Poster geschrieben. Der Script öffnet meinen Blog, wo ein Plugin installiert ist. Dort könnt ihr dann posten. Er heißt offiziell "Autoit Poster", da das Plugin mit Facebook verbunden ist und Mark Zuckerberg natürlich nicht erlaubt, den Namen "Facebook" in einer Anwendug zu verwenden.

    Vorteile:
    () Posten ohne Browser zu öffnen

    Nachteile:
    () Privatsphäre, denn man kann sehen, was die anderen gepostet haben. Ich arbeite aber gerade daran!

    EDIT1: Update #1: Bitte als URL die Seite "http://stevenx.co.de/Poster.htm" eintragen! Danke!
    EDIT2: Es benutzt einen Browser, doch denn musst du nicht öffnen.

    So, hier der Script:

    [autoit]

    #cs ----------------------------------------------------------------------------

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

    AutoIt Version: 3.3.6.1
    Author: StevenX

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

    Script Function:
    Autoit Facebook Poster

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

    #ce ----------------------------------------------------------------------------

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

    ; Script Start - Add your code below here

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

    #include <GUIConstants.au3>
    #include <IE.au3>
    $GUI = GUICreate("Autoit Poster", 800, 450)
    $object = ObjCreate("Shell.Explorer.2")
    $object_ctrl = GUICtrlCreateObj($object, 16, 10, 780, 400)
    $url_button = GUICtrlCreateButton("Autoit Poster Version 1.0 By StevenX", 16, 410, 750, 25, 0)
    _IENavigate($object, "http://autoitposter.blogspot.com/")
    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select

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

    Case $msg = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

    [/autoit]

    Dateien

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

    3 Mal editiert, zuletzt von Stevenx (26. Juni 2011 um 15:55)

  • Ich habs zwar nicht getestet, aber das klappt glub ich nur, wenn man in seinem Browser in fb angemeldet ist, oder das angemeldet bleiben häkchen aktiviert hat.

  • stimmt schon. Du kannst ja nicht als "anonym" posten.

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Zitat

    () Posten ohne Browser zu öffnen


    Das stimmt nicht... Es sei denn Internet Explorer ist kein Browser. Ich könnte mich da auch irren.

    Zitat

    () Privatsphäre, denn man kann sehen, was die anderen gepostet haben. Ich arbeite aber gerade daran!


    Das ist sowieso irrelevant. Facebook legt auf Privatssphäre ganz sicher keinen Wert ^^.

    Also wirklich beeindruckend ist dein Script nicht. Hättest du einen Poster komplett mir AutoIt gemacht (ja das geht) dann wäre das schon wesentlich interessanter.

    Edit: Hab es getestet... Und es funktioniert nicht. Ich bekomme lediglich ein paar Werbelinks angezeigt, mehr nicht. In deinem Quelltext finde ich auch nur den Link zu deiner App und ein Javascript wo noch ein bisschen Werbung eingebunden wird.

  • Ja schon, aber ich hatte heute mal einfach diese Idee. Werde natürlich versuchen, eine bessere Version zu schreiben. Danke trotzdem für dein Feedback.

    EDIT: Ich mein das mit der Privatsphäre so, dass man "vielleicht" die Posts von den anderen Benutzern sehen könnte. Hab aber viel gepostet und hab nix gesehn.

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Vergessen zu fragen: Man kann wirklich über Autoit auf die Facebook Pinwannd posten? Da habe ich Autoit ja mächtig unterschätzt...
    Danke vielmals, ich schau mal auf die Facebook Entwickler Seite.

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Mit AutoIt kann man dank TCP eig. alles machen was der Browser macht (bis auf Flash). Um zu sehen was der Browser sendet gibts das FF AddOn LiveHTTPHeader was dir die Package verrät die gesendet werden. So kannst du Nachrichten schreiben, Pinnwand posten etc.

    mfg BB

    "IF YOU'RE GOING TO KILL IT
    OPEN SOURCE IT!"

    by Phillip Torrone

    Zitat von Shoutbox

    [Heute, 11:16] Andy: ....böseböseböseböse....da erinnere ich mich daran, dass man den Puschelschwanz eines KaRnickels auch "Blume" nennt....ob da eins zum anderen passt? :rofl: :rofl: :rofl: :rofl:

    https://autoit.de/index.php?page…leIt#post251138

    Neon Snake

  • Wenn ich demnächst mal nichts zu tun habe kann ich ja so einen Poster machen. Schwierig ist das nicht.


    Was heißt hier mal nichts zu tun hab? Ich kenn dich doch, du hast nie was zu tun ^^

  • Edit: Hab es getestet... Und es funktioniert nicht. Ich bekomme lediglich ein paar Werbelinks angezeigt, mehr nicht. In deinem Quelltext finde ich auch nur den Link zu deiner App und ein Javascript wo noch ein bisschen Werbung eingebunden wird.


    Aha.. Sehr komisch.. bei mir funktioniert es.. Hast du auch den neuen Link eingebaut? Ich schau dann mal.. Achja, könntest du mir bitte dann ein Beispiel zeigen? Danke!

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • name22: könntest du mir bitte ein Beispiel zeigen, wie man so einen Poster macht? Danke!

    [Blockierte Grafik: http://stefan.blagojevic.at/loading.gif]

    Design, Modellbau, CAD <3
    AutoCAD, ArchiCAD, REVIT (ist ein Scheiss, habe aber das Zertifikat)

    Cinema 4D, RuckZuck Statik Programm

    Michael Bay als Architekt


    Da eine Glasfassade! Booom Sichtbeton! Laminiertes Bild auf Mosaiksteinchen! Granit! Granit! Granit! Sichtbetonwand mit 50° Neigung!
    Holzverkleidung erscheint da! Boooooom!

  • Ich habe mal einen einfachen Downloader gebastelt, der die TCP Funktionen in Verbindung mit dem Hypertext Transfer Protocol nutzt. Da wir einfach ein GET Request an den entsprechenden Server geschickt.
    Nach dem selben Prinzip würde auch ein Facebook Poster funktionieren. Besorg dir mal das Firefox AddOn Live HTTP Headers und schau dir an wie der Verkehr zwischen Facebook und Firefox abläuft. Ganz so einfach ist das für einen Anfänger auf diesem Gebiet sicher nicht.
    Alternativ kannst du auch WinHTTP verwenden. Aber mit den TCP Funktionen lässt sich das Funktionsprinzip deutlicher erkennen.

    Spoiler anzeigen
    [autoit]

    ; - Author: name22 (http://www.autoit.de)

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

    $sURL = InputBox("HTTP Download Example", "URL:", "http://autoit.de/wcf/images/futurex/autoit_logo_gtaspider.png")
    If @error Then Exit

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

    $aURL_Split = StringRegExp($sURL, '\Ahttp://([^:/]+?)(:\d+)?(/.+)\z', 1)
    $sHost = $aURL_Split[0]
    Switch UBound($aURL_Split)
    Case 2
    $iPort = 80
    $sFile = $aURL_Split[1]
    Case 3
    $iPort = StringTrimLeft($aURL_Split[1], 1)
    $sFile = $aURL_Split[2]
    EndSwitch

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

    $sRequest = 'GET ' & $sFile & ' HTTP/1.1' & @CRLF & _
    'Host: ' & $sHost & ":" & $iPort & @CRLF & _
    'User-Agent: Mozilla/5.0 (Windows NT 6.0; rv:5.0) Gecko/20100101 Firefox/5.0' & @CRLF & _
    'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8' & @CRLF & _
    'Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3' & @CRLF & _
    'Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7' & @CRLF & _
    'DNT: 1' & @CRLF & _
    'Connection: keep-alive' & @CRLF & @CRLF

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

    ConsoleWrite($sRequest)

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

    TCPStartup()

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

    $sIP = TCPNameToIP($sHost)
    $iSocket = TCPConnect($sIP, $iPort)
    TCPSend($iSocket, $sRequest)

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

    Do
    $sHTTP_Header = TCPRecv($iSocket, 1)
    Until $sHTTP_Header <> ""
    Do
    $sHTTP_Header &= TCPRecv($iSocket, 1024)
    Until StringRight($sHTTP_Header, 4) = @CRLF & @CRLF

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

    ConsoleWrite($sHTTP_Header)

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

    $aContentLength = StringRegExp($sHTTP_Header, 'Content-Length: (\d+)', 1)

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

    $bContent = "0x"
    Do
    $bContent &= StringTrimLeft(TCPRecv($iSocket, 1024, 1), 2)
    Until BinaryLen($bContent) = $aContentLength[0]

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

    $iFile = FileOpen(@ScriptDir & "\" & StringTrimLeft($sURL, StringInStr($sURL, "/", 0, -1)), 18)
    FileWrite($iFile, $bContent)
    FileClose($iFile)

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

    TCPCloseSocket($iSocket)
    TCPShutdown()

    [/autoit]