1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen

Release CodeBot Notifier

Dieses Thema im Forum "Releases & Sources" wurde erstellt von SilverHazard, 5. September 2017.

  1. SilverHazard

    SilverHazard Moderator Mitarbeiter Moderator

    Registriert seit:
    2. Juli 2017
    Beiträge:
    37
    Zustimmungen:
    30
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
    Hi,

    als ich während des Programmierens immer wieder ins Forum geschaut habe um zu gucken, ob es was neues gibt, kam mir irgendwann der Gedanke, dass das doch eigentlich besser gehen muss.

    Nach kurzer Überlegung kam ich auf eine - für einen Bot-Entwickler recht naheliegende - Idee und schrieb ein kleines Script um das ganze zu automatisieren.

    Das Script ist recht simpel und ruft einfach alle 10 Sekunden die Webseite auf und sucht nach neuen Posts, Hinweisen oder Antworten in Unterhaltungen. Wenn etwas gefunden wurde, sendet es eine Desktopbenachrichtigung und macht dann weiter.

    Das Ganze ist jetzt auf GitHub und hilft vielleicht dem ein oder anderen :)

    https://github.com/lukasschlueter/CodebotNotifier

    Wenn Fehler auftreten oder ihr noch Erweiterungsvorschläge habt, freue ich mich auch gerne über Pull Requests ;)
     
  2. 3HMonkey

    3HMonkey Administrator Mitarbeiter Administrator

    Registriert seit:
    28. Juni 2017
    Beiträge:
    58
    Zustimmungen:
    34
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
    Coole Idee!! Greifst du unseren RSS-Feed damit ab ?
     
  3. SilverHazard

    SilverHazard Moderator Mitarbeiter Moderator

    Registriert seit:
    2. Juli 2017
    Beiträge:
    37
    Zustimmungen:
    30
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
  4. w33dt4k3r

    w33dt4k3r Member

    Registriert seit:
    5. Juli 2017
    Beiträge:
    55
    Zustimmungen:
    17
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    Ort:
    NRW
    Super Idee, werde ich mir definitiv ansehen!
    Allerdings wenn 1000 benutzer das Script benutzen, dann hat der Server auch entsprechend zu arbeiten ;)
     
  5. hantoren

    hantoren Member

    Registriert seit:
    3. Juli 2017
    Beiträge:
    39
    Zustimmungen:
    6
    Punkte für Erfolge:
    8
    Geschlecht:
    männlich
    wtf wieso selenium? Python requests wäre doch wie gemacht dafür. Weniger CPU Leistung etc. etc.
     
  6. SilverHazard

    SilverHazard Moderator Mitarbeiter Moderator

    Registriert seit:
    2. Juli 2017
    Beiträge:
    37
    Zustimmungen:
    30
    Punkte für Erfolge:
    18
    Geschlecht:
    männlich
    Ein paar Daten zum tatsächlichen Leistungsverbrauch:
    1. Im sleep:
      Python.exe 0,0% CPU 16,6 MB Arbeitsspeicher
      PhantomJS.exe 0,0% CPU 126,3 MB Arbeitsspeicher
    2. Alle 10 Sekunden für 1 Request:
      Python.exe 0,0% bis 0,1% CPU 16,6 MB Arbeitsspeicher
      PhantomJS.exe 0,7% bis 1,1% CPU 132,3 MB Arbeitsspeicher
    Außerdem positiv: Die Arbeitsspeicherauslastung von PhantomJS nahm laufend langsam ab.

    Der Aufwand, das ganze in Selenium zu schreiben, ist für mich minimal. Das Script aktualisiert die Seite, überprüft die Benachrichtigungscounter und geht die List der neuen Threads durch.
    Vorgehensweise: In Firefox die id der Benachrichtigungscounter kopieren, von Selenium auslesen lassen und auf ein Attribut überprüfen lassen. Dann noch einen kurzen CSS-Selektor für die Threads basteln, auslesen und fertig.

    Wenn ich das mit requests umsetzen möchte, muss ich mich durch 2 Pakete für den Login durcharbeiten und sie nachbauen. Dann muss ich für die Liste der Threads weiterhin die Seite neuladen. Dann kann ich entweder die Liste mit nem Regex auslesen (unschön) oder bspw BeautifulSoup verwenden und wieder mit dem CSS-Selektor arbeiten. Die Counter werden dynamisch nachgeladen, ich habe also noch 2 weitere Anfragen, die ich sniffen und nachbauen muss.
    Vorteil davon: 130 MB weniger Arbeitsspeicher wird verbraucht 0,3% bis 0,7% weniger CPU-Auslastung (getestet mit einem vergleichbaren Script, das 3 mal google.com aufruft).
    Nachteil: Deutlich höherer Aufwand beim Erstellen.

    Rechtfertigt die Resourceneinsparung den Aufwand? In meinen Augen nicht wirklich, wenn das halbe Prozent bei deinem System tatsächlich einen Unterschied macht, solltest du evtl. stattdessen manuell am Handy überprüfen, ob es Neuigkeiten gibt.

    Da du aber etwas generalisiert von "etc. etc." sprichst, kläre mich doch bitte auf, was damit gemeint ist und ich kann das gerne bei einer weiteren Analyse berücksichtigen.
     

Diese Seite empfehlen

Die Seite wird geladen...