Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

...του ubuntu και έργων ΕΛ/ΛΑΚ (Έργα-Οδηγοί-Προτάσεις)

Συντονιστής: konnn

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό medigeek » 12 Δεκ 2010, 14:12

Τέλειωσα το αρχικό σχέδιο του gui:
Κώδικας: Επιλογή όλων
rm -rf /tmp/forum-sig
mkdir /tmp/forum-sig
cd /tmp/forum-sig
wget --no-check-certificate https://github.com/medigeek/ubuntu-gr_forum_signature/tarball/master -O ubuntu-gr_forum_signature.tar.gz
tar xzf ubuntu-gr_forum_signature.tar.gz
cd medigeek-*
python ubuntu-gr_forum_signature.py

Εικόνα

Σε περίπτωση που εντοπίσετε πρόβλημα, δώστε το αποτέλεσμα των εντολών:
Κώδικας: Επιλογή όλων
sudo apt-get -y install pastebinit
python ubuntu-gr_forum_signature.py
sudo lshw -xml -sanitize | pastebinit -b "http://pastebin.com"

(αν δεν σας δώσει σύνδεσμο/link το pastebinit, ξαναδοκιμάστε)
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό pros » 12 Δεκ 2010, 14:58

Όλα φαίνονται εντάξει!
Η «Εφαρμογή», για ποια λειτουργία προορίζεται;

10.04 / 12.04 64bit
Άβαταρ μέλους
pros
Συντονιστής
Συντονιστής
 
Δημοσιεύσεις: 3534
Εγγραφή: 28 Ιαν 2009, 22:28
IRC: sterios
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό medigeek » 12 Δεκ 2010, 15:29

pros έγραψε:Η «Εφαρμογή», για ποια λειτουργία προορίζεται;

Σκέφτομαι να το κάνω να επικοινωνεί με το φόρουμ και να αλλάζει την υπογραφή.. αλλά σε κανένα μήνα πιθανότατα να το τελειώσω. :P
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό s.dalas » 12 Δεκ 2010, 16:11


Άψογο! Και μπορεις να γράψεις και οτι θες στο αγγλικά, γνώσεις κτλ περα απο τις 3 επιλογές που έχει! Μπράβο Σάββα!
...Open minds using open source...
Γνώσεις ⇛ Linux: Όσο ζω μαθαίνω | Προγραμματισμός: Πολύ λίγα | Αγγλικά: οφ κορς
Desktop -> Dual Core 2.5GHz, 5Gb of Ram, 640Gb HD, Nvidia 9500GT + Ubuntu 13.10 = Life is simple...
Notebook -> 10.04 dual boot Win 7 σε lenovo ideapad U350
;) Οδηγός προς Νεοεισερχομένους ;) Οδηγοί - How to - Tutorials σε Κατηγορίες ;) http://UbuntuForums.org ;)
Άβαταρ μέλους
s.dalas
powerTUX
powerTUX
 
Δημοσιεύσεις: 2115
Εγγραφή: 19 Οκτ 2009, 03:42
Τοποθεσία: Καλλιθεα, Αθηνα
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό vagrale13 » 12 Δεκ 2010, 16:49

@medigeek
Μπραβο, πολυ καλο!
Το μονο που ισως να χρειαζεται να προστεθει, ειναι η επιλογη, Καθολου, κυριως για τον προγραμματισμο και τα Αγγλικα! :problem:
Desktop 1: Mint 13 Maya i386 / Ubuntu 14.10 Utopic Unicorn i386 (development branch)
CPU: AMD ATHLON II X2 215 │ RAM: 4026Mb │ Graphics Card: GeForce 210 512MB │ LG W2243S : 1920 x 1080
Desktop 2: Ubuntu 12.04 LTS Precise Pangoli i386
AMD Athlon 64 X2 5800+ │ 1024Mb │ nForce 7600 256MB (onboard) | 1024 x 768
Laptop : Sony Vaio VGN-N11m : Ubuntu 14.04Lts Trusty Tahr i386 (Mate desktop)


*Οδηγοί - How to - Tutorials σε Κατηγορίες
*Oδηγίες προς νεοεισερχόμενους σε forum ή linux
Άβαταρ μέλους
vagrale13
Freedom
Freedom
 
Δημοσιεύσεις: 7107
Εγγραφή: 04 Απρ 2009, 19:29
Τοποθεσία: κάπου εδώ μέσα στο net :P
Launchpad: vagrale
IRC: vagrale13
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό medigeek » 12 Δεκ 2010, 17:53

vagrale13 έγραψε:Το μονο που ισως να χρειαζεται να προστεθει, ειναι η επιλογη, Καθολου, κυριως για τον προγραμματισμο και τα Αγγλικα! :problem:

Ήξερα ότι κάτι ξέχασα :lol: Διορθώθηκε (commit de988bb7633f1770fc33)!
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό Phantomas » 20 Δεκ 2010, 02:24

Καλή ιδέα!
Ίσως μπορείς να αποφύγεις το sudo και τα επιπλέον στρέμματα κώδικα αν αντί για lshw χρησιμοποιούσες τα αρχεία εδώ: /sys/devices/virtual/dmi/id (νομίζω υπάρχει σε σχετικά νέους kernels) και για την cpu το /proc/cpuinfo :D
Άβαταρ μέλους
Phantomas
punkTUX
punkTUX
 
Δημοσιεύσεις: 156
Εγγραφή: 28 Ιούλ 2008, 15:57
IRC: Phantomas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό Phantomas » 20 Δεκ 2010, 16:54

medigeek έγραψε:Σκέφτομαι να το κάνω να επικοινωνεί με το φόρουμ και να αλλάζει την υπογραφή.. αλλά σε κανένα μήνα πιθανότατα να το τελειώσω. :P


Για δοκίμασε αυτό: http://pastebin.com/KE5bbGPB το έκανα με python-mechanize, δεν νομίζω πως υπάρχει προεγκατεστημένο όμως στο Ubuntu... Πάντως έχει πολλές δυνατότητες και είναι εύκολο στη χρήση. :)
Άβαταρ μέλους
Phantomas
punkTUX
punkTUX
 
Δημοσιεύσεις: 156
Εγγραφή: 28 Ιούλ 2008, 15:57
IRC: Phantomas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό medigeek » 20 Δεκ 2010, 17:11

# Submit the credentials
response = self.br.submit()


Ευχαριστώ, αλλά... χθες το τέλειωσα. :P Δεν το έστειλα ακόμη στο github επειδή χρησιμοποιώ το λογαριασμό μου για δοκιμασίες.
Δεν είχα λόγο να το κάνω class, οπόταν χρησιμοποίησα def:
Κώδικας: Επιλογή όλων
def sendtoweb(signature="", username="", password=""):
    m = __import__("mechanize")
    br = m.Browser()
    br.set_handle_referer(True)
    br.set_handle_redirect(True)
    br.set_handle_equiv(True)
    #br.set_handle_gzip(True)
    br.set_handle_refresh(m._http.HTTPRefreshProcessor(), max_time=1)

    br.open("http://forum.ubuntu-gr.org/ucp.php?i=profile&mode=signature")
    br.select_form(nr=1) # Select login form (no name for the form)
    br["username"] = username
    br["password"] = password
    response1 = br.submit()
    #h1 = response1.read()
    #print(h1)

    r2 = br.follow_link(url_regex=r'.*profile.*mode=signature.*sid')
    #h2 = r2.read()
    #print(h2)

    br.select_form(nr=1)
    oldsigtmp = br["signature"]
    oldsig = unicode(oldsigtmp, "utf-8")
    br["signature"] = signature
    r3 = br.submit(name='submit')
    h3 = r3.read()
    #print(h3)

    m = re.search(r'<p class="error">(.*)</p>', h3)
    if m:
        print("Error: %s" % m.group(1))

    r4 = br.follow_link(url_regex=r'ucp\.php.*mode=logout')
    #h4 = r4.read()
    #print(h4)

    print("Submitted to forum!")
    return oldsig


Η δική σου έκδοση είναι όντως πιο ενδιαφέρουσα.. :) Για το submit υπάρχουν δύο κουμπιά με type="submit" (Preview και Submit) και θέλει να θέσεις ποιο κουμπί submit να χρησιμοποιήσει: br.submit(name='submit')
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

Re: Ubuntu-gr αυτόματη υπογραφή φόρουμ [python]

Δημοσίευσηαπό medigeek » 30 Δεκ 2010, 09:50

* Δέχεται username/password.
* Εμφανίζει σφάλματα (αν υπάρχουν). Αν κάνετε λάθος 3+ φορές στον κωδικό, πρέπει να κάνετε σύνδεση/login από το φόρουμ.
* Το κουμπί "Αποστολή στο φόρουμ" στέλνει την υπογραφή στο φόρουμ. Η προηγουμενη υπογραφή θα εμφανιστεί στο κουτάκι "Προηγούμενη υπογραφή".
Αυτά, καλές γιορτές. :)

Κώδικας: Επιλογή όλων
rm -rf /tmp/forum-sig
mkdir /tmp/forum-sig
cd /tmp/forum-sig
wget --no-check-certificate https://github.com/medigeek/ubuntu-gr_forum_signature/tarball/master -O ubuntu-gr_forum_signature.tar.gz
tar xzf ubuntu-gr_forum_signature.tar.gz
cd medigeek-*
python ubuntu-gr_forum_signature.py
Κύπριος; Κόπιασε στο ubuntu-cy! ┃ Launchpad Debian Github
Οδηγός για νεοεισερχόμενους -- Αρχικές οδηγίες για αρχάριους χρήστες του Ubuntu

1 Γνώσεις Linux: Πολύ καλό ┃ Προγραμματισμού: Πολύ καλό ┃ Αγγλικών: Πολύ καλό
2 Ubuntu 12.10 quantal 3.5.0-21-generic 64bit (en_US.UTF-8, GNOME cinnamon2d), Ubuntu 3.5.0-19-generic, Windows 7
3 Intel Core2 Duo CPU E6550 2.33GHz ‖ RAM 5970 MiB ‖ MSI MS-7235
4 nVidia G73 [GeForce 7300 GT] [10de:0393] {nvidia}
5 eth0: Realtek RTL-8110SC/8169SC Gigabit Ethernet [10ec:8167] (rev 10)
Άβαταρ μέλους
medigeek
Freedom
Freedom
 
Δημοσιεύσεις: 5023
Εγγραφή: 24 Μάιος 2008, 14:49
Τοποθεσία: Σερβία/Κύπρος
Launchpad: medigeek
IRC: savvas
Εκτύπωση

ΠροηγούμενηΕπόμενο

  • ΣΧΕΤΙΚΑ ΘΕΜΑΤΑ
    ΑΠΑΝΤΗΣΕΙΣ
    ΠΡΟΒΟΛΕΣ
    ΣΥΓΓΡΑΦΕΑΣ

Επιστροφή στο Ανάπτυξη Λογισμικού / Αλγόριθμοι