Skip to content
This repository has been archived by the owner on Jul 9, 2024. It is now read-only.

Cookie improvements #166

Merged
merged 6 commits into from
May 27, 2021
Merged

Cookie improvements #166

merged 6 commits into from
May 27, 2021

Conversation

sinun98
Copy link
Collaborator

@sinun98 sinun98 commented May 26, 2021

Kann man adden oder auch nicht

tools/its.py Outdated
# prüfen, ob Cookies gesetzt wurden und in Session übernehmen
try:
cookie = driver.get_cookie("bm_sz")
time.sleep(10)
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sleep muss noch raus

@Floskinner
Copy link
Contributor

Vielleicht hier noch ergänzend zu dem Thema...:

Was man auch noch testen könnte, dass man bei Zeile 256 in der Funktion driver_enter_code

# Maus-Bewegung hinzufügen (nicht sichtbar)       
action.move_by_offset(10, 20).perform()

hier noch weiteres klicken mit pause einzufügen kann

# Maus-Bewegung hinzufügen (nicht sichtbar)       
action.move_by_offset(10, 20).perform()
time.sleep(1)
action.move_by_offset(1, 2).perform()
time.sleep(2)
action.move_by_offset(2,1).perform()

Hatte damals die Erfahrung mit meinem Bot gemacht, dass bereits 2 mal i wo klicken viel gebracht hat bezüglich dem Bot-Schutz (aktuell sind es hier ja nur 1 klick).
Die Idee, dass der User wirklich selbst wo klicken kann ist natürlich auch nicht schlecht und schadet an sich ja nicht

@ralfescher
Copy link

ich habe gerade die Änderungen ausprobiert
bei mir kommt jetzt [err] [renew_cookies_code] WebDriverException exception raised - retry 1
und endet mit
2021-05-27 11:50:42.173 impfterminservice [err] [renew_cookies_code] WebDriverException exception raised - retry 10
2021-05-27 11:50:42.177 impfterminservice [err] [*TER1 | 70376] (unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/chromium-browser is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

@sinun98
Copy link
Collaborator Author

sinun98 commented May 27, 2021

ich habe gerade die Änderungen ausprobiert
bei mir kommt jetzt [err] [renew_cookies_code] WebDriverException exception raised - retry 1
und endet mit
2021-05-27 11:50:42.173 impfterminservice [err] [renew_cookies_code] WebDriverException exception raised - retry 10
2021-05-27 11:50:42.177 impfterminservice [err] [*TER1 | 70376] (unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/chromium-browser is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

Falls du das in meinem Branch ausprobiert hast liegt es vermutlich daran das alte Chrome Driver darin sind.

@sinun98
Copy link
Collaborator Author

sinun98 commented May 27, 2021

Vielleicht hier noch ergänzend zu dem Thema...:

Was man auch noch testen könnte, dass man bei Zeile 256 in der Funktion driver_enter_code

# Maus-Bewegung hinzufügen (nicht sichtbar)       
action.move_by_offset(10, 20).perform()

hier noch weiteres klicken mit pause einzufügen kann

# Maus-Bewegung hinzufügen (nicht sichtbar)       
action.move_by_offset(10, 20).perform()
time.sleep(1)
action.move_by_offset(1, 2).perform()
time.sleep(2)
action.move_by_offset(2,1).perform()

Hatte damals die Erfahrung mit meinem Bot gemacht, dass bereits 2 mal i wo klicken viel gebracht hat bezüglich dem Bot-Schutz (aktuell sind es hier ja nur 1 klick).
Die Idee, dass der User wirklich selbst wo klicken kann ist natürlich auch nicht schlecht und schadet an sich ja nicht

Da hast du recht. Hab nur die Befürchtung dass es wieder geblockt wird wenn immer genau dasselbe Verhalten abgespielt wird.

@ralfescher
Copy link

ralfescher commented May 27, 2021

ich habe gerade die Änderungen ausprobiert
bei mir kommt jetzt [err] [renew_cookies_code] WebDriverException exception raised - retry 1
und endet mit
2021-05-27 11:50:42.173 impfterminservice [err] [renew_cookies_code] WebDriverException exception raised - retry 10
2021-05-27 11:50:42.177 impfterminservice [err] [*TER1 | 70376] (unknown error: DevToolsActivePort file doesn't exist)
(The process started from chrome location /usr/bin/chromium-browser is no longer running, so ChromeDriver is assuming that Chrome has crashed.)

Falls du das in meinem Branch ausprobiert hast liegt es vermutlich daran das alte Chrome Driver darin sind.

Ich arbeite normalerweise nicht mit GitHub, ich habe Deinen Branch wie folgt auf den original Beta Branch angewendet:
(das Thema ist hier zwar off-topic, aber ich denke das ist innerhalb der Pull-Request Diskussion okay)

ralf@raspberrypi4:~/vaccipy $ git checkout beta
Branch 'beta' set up to track remote branch 'beta' from 'origin'.
Switched to a new branch 'beta'
ralf@raspberrypi4:~/vaccipy $ git checkout -b beta-cookie
Switched to a new branch 'beta-cookie'
ralf@raspberrypi4:~/vaccipy $ git pull 'https://github.com/sinun98/vaccipy.git' cookieimprovements
From https://github.com/sinun98/vaccipy
 * branch            cookieimprovements -> FETCH_HEAD
Auto-merging tools/its.py
Merge made by the 'recursive' strategy.
 main.py      |  2 +-
 tools/its.py | 32 ++++++++++++++++++++++++++++++++

@ralfescher
Copy link

Die Idee, dass der User wirklich selbst wo klicken kann ist natürlich auch nicht schlecht und schadet an sich ja nicht
Da hast du recht. Hab nur die Befürchtung dass es wieder geblockt wird wenn immer genau dasselbe Verhalten abgespielt wird.

Warum nicht die statischen Werte durch Random Werte ersetzen?
(betrifft auch Anzahl der Klicks und die Pausen)

tools/its.py Outdated
'Cookie': cookies
})

"Es die Cookies müssen manuell im Browser generiert werden.\n")

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

typo?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes danke

@sinun98
Copy link
Collaborator Author

sinun98 commented May 27, 2021

Hab die Vorschläge mit random Werten hinzugefügt. Klappt bei mir sehr gut, allerdings nicht headless. Schlägt die automatisierte Generation fehl wird der Nutzer aufgefordert manuell zu Klicken.

@timreibe
Copy link
Owner

timreibe commented May 27, 2021

Die Idee, dass der User wirklich selbst wo klicken kann ist natürlich auch nicht schlecht und schadet an sich ja nicht
Da hast du recht. Hab nur die Befürchtung dass es wieder geblockt wird wenn immer genau dasselbe Verhalten abgespielt wird.

Warum nicht die statischen Werte durch Random Werte ersetzen?
(betrifft auch Anzahl der Klicks und die Pausen)

@sinun98 kannst du das noch einbauen? geht bestimmt auch eine weitere Range, von 0-500 oder so

edit: sehe grad du hasts schon, vllt noch range anpassen. Wenn wir von Pixeln reden sind 1-9 Pixel nicht so viel haha

@sinun98
Copy link
Collaborator Author

sinun98 commented May 27, 2021

Die Idee, dass der User wirklich selbst wo klicken kann ist natürlich auch nicht schlecht und schadet an sich ja nicht
Da hast du recht. Hab nur die Befürchtung dass es wieder geblockt wird wenn immer genau dasselbe Verhalten abgespielt wird.

Warum nicht die statischen Werte durch Random Werte ersetzen?
(betrifft auch Anzahl der Klicks und die Pausen)

@sinun98 kannst du das noch einbauen? geht bestimmt auch eine weitere Range, von 0-500 oder so

edit: sehe grad du hasts schon, vllt noch range anpassen. Wenn wir von Pixeln reden sind 1-9 Pixel nicht so viel haha

Done

tools/its.py Outdated
@@ -255,9 +255,15 @@ def driver_enter_code(self, driver, plz_impfzentrum):
# Maus-Bewegung hinzufügen (nicht sichtbar)
action.move_by_offset(10, 20).perform()
time.sleep(randint(1, 3))
action.move_by_offset(randint(1, 9), randint(1, 9)).perform()
try:
action.move_by_offset(randint(1, 100), randint(1, 100)).perform()
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Man muss halt aufpassen, dass nicht aus versehen irgendwo auf einen Link geklickt wird

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wäre ja nicht schlimm oder?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah ne stimmt, da hatte ich einen Denkfehler, die Cookies bleiben ja erhalten, selbst wenn man auf die Startseite weitergeleitet wird ^^

Jedoch hätte ich evtl. noch einen anderen Verbesserungsvorschlag
Du könntest das ganze ja in einer Schleife machen, dann bräuchtest du nicht so viele Zeilen und nur 1 try / except

for i in range(3):
   try:
        action.move_by_offset(randint(1, 100), randint(1, 100)).perform()
        time.sleep(randint(1, 3))
   except Exception as error:
        #evt fehler in den Logs speichern, damit man weiß was los war
        pass

@sinun98 sinun98 merged commit 45e8e0f into timreibe:beta May 27, 2021
@sinun98 sinun98 deleted the cookieimprovements branch May 28, 2021 10:16
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants