Wie fang ich an? Welche Module? ist es möglich?

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.
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Wie fang ich an? Welche Module? ist es möglich?

Beitragvon Itsjustme » Freitag 14. März 2008, 02:36

Hi erstmal :)
Also ich habe mit python mitlerweile schon einen " Jappy Bot " Programmiert

Ich erläuter mal kurz Jappy.de ist eine internet community wo man sich ggn seitig gästebuch einträge machen kann.... der bot liest also eine .txt aus mit den benutzer und macht denen gästebucheinträge...


allerdings läuft dieser bot über den browser dh wenn er läuft tabt er sich rum und man darf nichts am pc drücken....

Ich würde das jetzt gerne so umschreiben das er komplett im hintergrund läuft aber ich weiß garnicht welche module.... ich dafür brauche ( ist ein hohes ziel ich weiß) aber wenn man nie mit was schwerem anfängt macht mans nie^^

Also folgende fragen:
-Ist das in Python überhaupt möglich?
-Welche Module brauche ich?
-Gibt es Tutorials o. ähnliches für solche sachen?
-Wo kann man sich da gut einlesen ?

brauche halt einfach mal so nen start weiß garnicht wo ich anfangen soll da ich keine ahnung habe wie ich im hintergrund auf den browser zugreife...

wäre echt super falls mir jemand helfen könnte !!!

Danke schonmal
Mfg. Itsjustme
Benutzeravatar
nkoehring
User
Beiträge: 543
Registriert: Mittwoch 7. Februar 2007, 17:37
Wohnort: naehe Halle/Saale
Kontaktdaten:

Beitragvon nkoehring » Freitag 14. März 2008, 02:51

Hmm.. so richtig wirklich habe ich noch nicht verstehen koennen, was genau du machen willst. Aber es ist problemlos moeglich in Python HTML-Seiten zu laden und Content ueber das HTTP-Protokol zu posten ohne dafuer einen Browser zu verwenden...
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Beitragvon Itsjustme » Freitag 14. März 2008, 02:55

also ich will praktisch daten auf internetseiten ausfüllen ohne das sie offen sind also z.b.:

1. auf www.jappy.de gehen

2. einloggen mit Benutzername / Passwort

3. www.jappy.de/user/(Benutzername/gb/neu öffnen

4. da in ein feld eine nachricht schreiben und abschicken

geht das alles über das HTTP modul?
audax
User
Beiträge: 830
Registriert: Mittwoch 19. Dezember 2007, 10:38

Beitragvon audax » Freitag 14. März 2008, 09:30

Öhm. Sicher. Will man aber nicht tun :D
http://wwwsearch.sourceforge.net/ClientForm/
Das wäre eher passend.
Benutzeravatar
fe
User
Beiträge: 11
Registriert: Freitag 7. September 2007, 15:29

Beitragvon fe » Freitag 14. März 2008, 14:50

audax hat geschrieben:Öhm. Sicher. Will man aber nicht tun :D
http://wwwsearch.sourceforge.net/ClientForm/
Das wäre eher passend.


Bin auch gerade dabei mit der ClientForm zu experimentieren. Gibt es dazu noch eine bessere Dokumentation? Irgendwie werde ich aus dem Beispiel dort nich so schlau...

Grüße
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Freitag 14. März 2008, 14:54

Ich würde da gleich mechanize verwenden oder das auch noch mit Twill kombinieren.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Beitragvon Itsjustme » Freitag 14. März 2008, 17:06

Ah super danke da habe ich endlich mal einen anfang werde mich dann mal einarbeiten :)

Mfg Itsjustme
Benutzeravatar
fe
User
Beiträge: 11
Registriert: Freitag 7. September 2007, 15:29

Beitragvon fe » Samstag 15. März 2008, 13:50

Ich habe eine Frage zu Twill:

Wenn ich mit showforms() die Seite auslese, wie greife ich dann auf die Liste zu? Also wie ist der Name der Liste? Dass es mit [X] geht ist klar, nur brauch ich den Namen... :)

Grüße
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Beitragvon Itsjustme » Mittwoch 9. April 2008, 14:57

Hallo,
ich habe mich jetzt mal ein bisschen eingelesen in mechanize.... und habe mal versucht ein login script auf jappy.de umzuschreiben und soweit bin ich jetzt gekommen aber irgendwie funktioniert es nicht. in der output html is einfach nur die startseite (www.jappy.de)

Code: Alles auswählen

###!/usr/bin/env python
### -*- coding: iso-8859-15 -*-

import mechanize
import urllib

# Login
loginurl = "http://www.jappy.de/start"
logindata = urllib.urlencode(
    {
        "login[u]": "BENUTZERNAME",
        "login[p]": "PASSWORT",
        "Submit": "login",
        "<None>":"[*on]",
       
    }
)
response = mechanize.urlopen(loginurl, logindata)
response.read() # wichtig

##posteingangurl = "http://www.jappy.de/"
##response = mechanize.urlopen(posteingangurl)
#schreibe den htmloutput in eine Datei,
#damit man das Ergebniss anschauen kann
f = file('output.html','w')
f.write(response.read())
f.close()


wäre nett wenn mir einer sagen könnte wo mein fehler liegt vermute das ich den code oder so falsch "interpretiert " habe aber weiß echt nichtmehr weiter ...

mfg Itsjustme
Jan-Peer
User
Beiträge: 166
Registriert: Dienstag 2. Oktober 2007, 10:55

Beitragvon Jan-Peer » Mittwoch 9. April 2008, 15:21

Du verwendest zwei Mal 'response.read()' - ich vermute mal ganz stark, daß nach dem ersten Mal die Flasche bzw. der Puffer oder was auch immer 'leer' ist. Probier das mal aus und sag uns Bescheid, ob es daran lag.
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Mittwoch 9. April 2008, 15:31

Ich versteh nicht, was heute alle gegen ``mechanize.Browser()`` haben, dass sie entweder mechanize als urllib verwenden oder nur ClientForm nutzen....
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
BlackVivi
User
Beiträge: 762
Registriert: Samstag 9. Dezember 2006, 14:29
Kontaktdaten:

Beitragvon BlackVivi » Mittwoch 9. April 2008, 16:58

Leonidas hat geschrieben:Ich versteh nicht, was heute alle gegen ``mechanize.Browser()`` haben, dass sie entweder mechanize als urllib verwenden oder nur ClientForm nutzen....
Frag ich mich auch. Hab damals'n Skript zum verschicken von PNs in phpbb Foren geschrieben, ging mit .browser() genial.
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Beitragvon Itsjustme » Freitag 11. April 2008, 08:36

Jan-Peer hat geschrieben:Du verwendest zwei Mal 'response.read()' - ich vermute mal ganz stark, daß nach dem ersten Mal die Flasche bzw. der Puffer oder was auch immer 'leer' ist. Probier das mal aus und sag uns Bescheid, ob es daran lag.


hmm habs mal ausprobiert klappt aber immernochnicht

Code: Alles auswählen

###!/usr/bin/env python
### -*- coding: iso-8859-15 -*-

import mechanize
import urllib

# Login
loginurl = "http://www.jappy.de/start"
logindata = urllib.urlencode(
    {
        "login[u]": "BENUTZERNAME",
        "login[p]": "PASSWORT",
        "Submit": "login",
        "<None>":"[*on]",


       
    }
)
response = mechanize.urlopen(loginurl, logindata)
#response.read() # wichtig

##posteingangurl = "http://www.jappy.de/"
##response = mechanize.urlopen(posteingangurl)
#schreibe den htmloutput in eine Datei,
#damit man das Ergebniss anschauen kann
f = file('output.html','w')
f.write(response.read())
f.close()


die output datei sieht so aus wie die ganz normale startseite (www.jappy.de)
ich glaube der benutzername und das passwort wird irgendwie nicht richtig übermittelt :S

sind die befehle falsch ausm quelltext gelesen? oder liegtdas daran das die adresse vlt falsch ist ( da ich bei anderen nur sowas wie : www.helloworld.de/passwort.php finde aber bei jappy ist so ein protokoll nicht zu finden -.-

mfg itsjustme
[/url]
Itsjustme
User
Beiträge: 13
Registriert: Mittwoch 5. März 2008, 16:40
Wohnort: Köln
Kontaktdaten:

Beitragvon Itsjustme » Freitag 11. April 2008, 08:37

Leonidas hat geschrieben:Ich versteh nicht, was heute alle gegen ``mechanize.Browser()`` haben, dass sie entweder mechanize als urllib verwenden oder nur ClientForm nutzen....


habe einfach das erste verwendet was ich gefunden habe :)
werde mir jez mal mechanize.Browser() angucken danke für den tipp!


mfg Itsjustme

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder