Mit Python auf andere Anwendungen zugreifen?

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
Karl
User
Beiträge: 252
Registriert: Freitag 29. Juni 2007, 17:49

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?
Benutzeravatar
Kebap
User
Beiträge: 687
Registriert: Dienstag 15. November 2011, 14:20
Wohnort: Dortmund

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.
webspider
User
Beiträge: 485
Registriert: Sonntag 19. Juni 2011, 13:41

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.
Antworten