Hey,
ich frage mich gerade, wie man mit Python auf andere Programme zugreifen kann, bzw eben Elemente dieser Anwendungen auswerten kann.
Das konkrete Problem, was ich im Kopf habe, ist: Wie könnte ich ein Programm schreiben, das beim Skype Client eine Konversation mitliest um beispielsweise automatisiert die geposteten Links zu analysieren?
Ihr kennt das ja sicher aus IRC oder ähnlichen Chats, dass ein Bot automatisch den zum Video gehörenden Titel mitpostet, damit jeder ohne das Anklicken bescheid weiß, was für ein Inhalt sich hinter dem Link verbirgt. Allerdings ist es im IRC recht einfach, einen eigenen Clienten zu schreiben, der das dann übernimmt, bei Skype ist es denke ich nicht so leicht getan. Oder doch?
PS: Ich interessiere mich auch für das Problem in allgemeiner Natur, nicht bloß für das Skype Beispiel. Ich würde also gerne generell wissen, wie ich bei einem beliebigen Programm bestimmte Werte auslesen kann, oder vielleicht sogar bestimmte Elemente (wie einen Button) auslösen kann. Geht sowas ohne eine vom Hersteller bereitgestellte API?
Mit Python auf andere Anwendungen zugreifen?
Es gibt ja bspw. auch die Windows API, mit der du die Maus steuern, Knöpfe anklicken und Text tippen kannst. Für Skype kenne ich jetzt nichts Spezielles. Mitlesen klingt ggf. etwas problematisch.
MorgenGrauen: 1 Welt, 8 Rassen, 13 Gilden, >250 Abenteuer, >5000 Waffen & Rüstungen,
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
>7000 NPC, >16000 Räume, >200 freiwillige Programmierer, nur Text, viel Spaß, seit 1992.
Bei Skype ist es einfacher die protokollierte History auszuwerten. Diese liegt als SQLite-Datenbank vor, ich habe mal vor längerer Zeit einige Skripte gebaut, welche URLs extrahieren und Konversationen dumpen können.
Für Bots wird empfohlen die Skype-API zu verwenden. Oder Skype mithilfe von fertiger Software wie Skype4Py zu wrappen. Allerdings braucht dies eine laufende Skype-Instanz, sonst funktioniert es nicht. Und ja, eine bereitgestellte oder nachträglich eingebaute API ist wesentlich besser und angenehmer zu bedienen als ein AHK-Skript welches Klicks simuliert.
Für Bots wird empfohlen die Skype-API zu verwenden. Oder Skype mithilfe von fertiger Software wie Skype4Py zu wrappen. Allerdings braucht dies eine laufende Skype-Instanz, sonst funktioniert es nicht. Und ja, eine bereitgestellte oder nachträglich eingebaute API ist wesentlich besser und angenehmer zu bedienen als ein AHK-Skript welches Klicks simuliert.