Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > General Coding > Coding Tutorials
You last visited: Today at 09:51

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



Selenium in Python nützen ( IDE = PyCharm )

Discussion on Selenium in Python nützen ( IDE = PyCharm ) within the Coding Tutorials forum part of the General Coding category.

Reply
 
Old   #1
 
Mad0ck's Avatar
 
elite*gold: 313
Join Date: Oct 2014
Posts: 1,367
Received Thanks: 284
Selenium in Python nützen ( IDE = PyCharm )

Hallo,

Da ich selber viel Probleme hatte, die Selenium Lib in Pyhton nutzbar zu machen, und es mich viele Stunden gekostet, herauszufinden warum es nicht funktioniert, mach ich nen kurzes TuT, um Nachfolgern dieses Problem zu ersparen.

Was wird benötigt ?
-Python
-Silenium Lib
-Chrome Webdriver
-Firefox Webdriver ( auch Geckodriver genannt )
- IDE ( in meinem Fall nehme ich PyCharm )

Python & Co downloaden und installieren
Ladet euch die aktuelle Version von runter.
Ich rate euch, Pyhton nicht als Express Installation zu installieren sondern manuell. ( Man kann so den Zielpfad angeben, was nett aber kein must have ist )
Ich habe das ganze unter C:\ in dem Ordner Python37 gespeichert.


Danach ladet euch als .tar.gz runter.
Dies entpackt Ihr, und speichert es in euren vorher installierten Python Ordner. Bei mir ist es C:\Python37
WICHTIG ! Bennent den Ordner unbedingt in selenium um !

Öffnet den Lib Ordner und kopiert nun den selenium Ordner rein.



Nun werden die Webdriver runter geladen.



Wählt je nach euren System die richtige Datei aus.

Die beiden Files wieder entpacken, und den Inhalt beliebig abspeichern.
( Sollte jedoch nicht irgendwo im nirgendwo liegen )
Ich habe das ganze wieder auf C:\ gespeichert.

Die .exe von Geckodriver kommt in nen Ordner "geckodriver" und für den webdriver von chrome das gleiche nur in nen Ordner "webdriver".


Umgebungsvariablen setzen
Um die Lib, bzw die driver benutzen zu können, müssen diese als Umgebungsvar. hinterlegt werden.
Begebt euch zum folgenden Ort:
Systemsteuerung\Alle Systemsteuerungselemente\System ->
Erweiterte Systemeinstellungen

Danach kommt dies:

Sucht bei den Systemvariablen die Path Var. und danach auf Bearbeiten.



Nun müsst Ihr alle Pade hinzufügen.
Drückt auf -> Neu -> kopiert den Pfad rein.
Folgendes muss dabei sein:
-> Ort wo Python inst. wurde
-> Der im Installationsverzeichnis enthaltene Scripts Ordner in Pyhton
-> Der geckodriver
-> der webdriver
-> und den selenium Ordner im Lib Verzeichnis von Pyhton, was wir vorhin hinzugefügt haben.

Beendet danach alles mit OK.


selenium via pip installieren
Geht in euren Pyhton Ordner ( C:\Pyhton37), und gebt oben wo Ihr den Pfad rauskopieren könnt " cmd " ein !

Bestätigt mit ENTER.

Es öffnet sich nun eine cmd, an der Position im Python Verzeichnis.
Tippt nun pip install -U selenium ein -> enter


Selenium wird nun installiert.
( Jedoch ist die pip installation Fehlerhaft, weswegen wir vorher den selenium Ordner in das Lin Verzeichnis kopieren mussten !.

IDE ( PyCharm ) konfigurieren
Ladet euch die IDE PyCharm runter.

Öffnet sie ( beim ersten Start könnt Ihr das Theme etc einstellen ).


Bennent euer Project ( 1 ), und schaut, dass das Environment als intepreter C:\Python37\python.exe hat !
Falls euch dies nicht angezeigt wird, könnt Ihr auf die drei Punkte ( ... ) neben dem Input-Feld klicken, und euch die python.exe aus euren Installationsverzeichnis von Python holen.




Nun dauert es kurz, bis das Environment geladen wurde.

Wenn alles fertig geladen wurde, geht unter File -> Settings -> Project Interpreter.

Hier muss wie vorhin eben, der Interpreter C:\Python37\python.exe sein (2).
Falls es das nicht ist, ändern bzw. manuell hinzufügen wie ich paar Sätze drüber gerade erklärt habe.

Hier sollte nun das package " selenium " vorhanden sein ! (3)


Ist es vorhanden drückt ok ( 4 )




Manchmal kommt es vor, dass es nicht vorhanden ist, dann musst du es manuell adden.
Das geht über das " + " rechts davon.


Ihr könnt auch andere Libs hinzufügen wie zB Requests oder BeatifulSoup etc. etc.


Selenium und Webdriver/Geckodrive testen

Habt Ihr alles richtig gemacht, kann es ab hier eigentlich keine Probleme mehr geben.

Öffnet ein neues Projekt.
Im neuen Project fügt Ihr ein neues Python Package hinzu.
Im Python Package fügt Ihr nun ein python file hinzu.
( Das __init__ file wird automatisch erzeugt. Wird aber in diesem Zusammenhang fürs testen der Funktionen nicht benötigt.

In euren Pyhton-file schreibt Ihr nun folgendes.
PHP Code:
# import webdriver from  selenium lib
from selenium import webdriver

#var decl.
#.Chrome() for the usage of Chrome
#.Firefox() for the usage of Firefox ( Geckodriver)
driver webdriver.Chrome()

#open an url
driver.get("https://www.elitepvpers.com/forum/"
Nun sollte sich epvp in einem Chrome Browser öffnen.

Ich nehme im Normalfall Chrome, da die Vergangenheit zeigte, dass Firefox mit neuen Updates nur Probleme macht.


Das wars nun eigentlich.
Falls euch Irgendetwas auffällt, was man verbessern könnte, oder ich iwo was zu verpixeln übersehen habe gebt mir bescheid.

Bei Fragen, einfach eine PN an mich oder sonstiges.

Lg
Mad0ck
Mad0ck is offline  
Thanks
4 Users
Old 09/06/2019, 14:06   #2
 
elite*gold: 0
Join Date: Sep 2019
Posts: 7
Received Thanks: 0
Schönes Tutorial, nur kann ich jeden von Selenium abraten der etwas richtiges programmiert.

Für kleine Privat anwendungen ist selenium grade so noch in ordnung.
SchrottKopf is offline  
Old 09/06/2019, 17:41   #3
 
elite*gold: 100
Join Date: Apr 2008
Posts: 860
Received Thanks: 1,473
Quote:
Originally Posted by SchrottKopf View Post
Schönes Tutorial, nur kann ich jeden von Selenium abraten der etwas richtiges programmiert.

Für kleine Privat anwendungen ist selenium grade so noch in ordnung.
Und was ist deine Empfehlung wenns um Browser automation geht?
florian0 is offline  
Thanks
1 User
Old 09/06/2019, 18:13   #4
 
Mad0ck's Avatar
 
elite*gold: 313
Join Date: Oct 2014
Posts: 1,367
Received Thanks: 284
Quote:
Originally Posted by SchrottKopf View Post
Schönes Tutorial, nur kann ich jeden von Selenium abraten der etwas richtiges programmiert.

Für kleine Privat anwendungen ist selenium grade so noch in ordnung.
Kannte bzw. konnte damals noch nichts mit php im Browser machen.
Mittlerweile mach ich alles mit HtmlParser usw
Mad0ck is offline  
Reply


Similar Threads Similar Threads
Python/Selenium, Captcha Lösen
07/02/2017 - General Coding - 1 Replies
Hallo, Ich hoffe ich Find hier ein wenig Hilfe für mein Problem. Ich will das mein Programm aus einem Captcher die 4 zahlen raus bekommt https://prnt.sc/fqn37k, Aber ich bin mir nicht sicher wie ich das Anstellen soll. Ich hab alles Fertig, bist auf denn Punkt das das Programm nicht selbst ständig die zahlen raus bekommt. Lg Black_wulf
Python IDE?
08/22/2013 - General Coding - 1 Replies
Hey, ich nutze den Ninja-IDE. Ich bin mit dem auch recht zufrieden. Jedoch ist dieser auf englisch und ich blick nicht ganz wie ich diesen übersetzen kann. :/ Und tkinter klappt da iwie auch nicht so recht. Kann mir jemand helfen? Nutze Linux (Manjaro).
Python + Eric Python IDE installieren ?!
07/05/2011 - General Coding - 0 Replies
hat sich erledigt.
[Selenium IDE]500 internal server error umgehen
03/02/2010 - Browsergames - 3 Replies
Hi Leute! Hab einen BOT mit Selenium IDE gebastelt für ein Browsergame....das spiel ist: World of Crime (Welt1)...allerdings kommt irgendwann nachts immer ein "500 internal server error" von der Seite des Browsergames und dann stoppt das script und ich muss bzw. kann es dann am nächsten Tag erst wieder anstellen! der kommt jede nacht und is wohl eine schutzeinreichtung gegen bots oder so... kann man das irgendwie umgehen oder das problem beheben? mfg KevinA3
[HILFE] Selenium IDE (BOT)
02/16/2010 - General Coding - 0 Replies
Moin Leute! Ich hab mit den Firefox-Addon Selenium IDE geladen und mir damit einen einfachen bot gebaut der auch super funktioniert! Nur was muss ich machen damit sich der Bot immer wiederholt? Also beispielweise ein befehl um einen Bereich mehrmals zu wiederholen! Hab jetzt die befehle ganz oft untereinander kopiert aber das is ja auch nich das Wahre! Für welche die das Programm nicht kennen: Das Format ist HTML!! Kann mir jemand helfen? Gruß KevinAudiA3



All times are GMT +1. The time now is 09:51.


Powered by vBulletin®
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2024 elitepvpers All Rights Reserved.