Klicken Sie hier bis gestern
Sie werden Ingenieur in 100 Tagen - Tag 70 - Programmieren - Über Scraping
Sie werden in 100 Tagen Ingenieur - Tag 63 - Programmierung - Über Wahrscheinlichkeit 1
Sie werden in 100 Tagen Ingenieur - Tag 59 - Programmierung - Über Algorithmen
Sie werden in 100 Tagen Ingenieur --- Tag 53 - Git - Über Git
Sie werden in 100 Tagen Ingenieur - Tag 42 - Cloud - Über Cloud-Dienste
Sie werden in 100 Tagen Ingenieur - Tag 36 - Datenbank - Über die Datenbank
Sie werden Ingenieur in 100-Tage-24-Python-Grundlagen der Python-Sprache 1
Sie werden in 100 Tagen Ingenieur - Tag 18 - JavaScript - Grundlagen von JavaScript 1
Sie werden in 100 Tagen Ingenieur - 14. Tag - CSS - CSS-Grundlagen 1
Sie werden in 100 Tagen Ingenieur - Tag 6 - HTML - HTML-Grundlagen 1
Diese Zeit ist auch eine Fortsetzung des Schabens.
Wenn Sie die Installation von Selen abgeschlossen haben, können Sie fortfahren.
Laden Sie die Bibliothek. Vorausgesetzt, Google Chrome wird ausgeführt ...
from selenium import webdriver
#Treibereinstellungen
chromedriver = "Vollausweis des Fahrers"
driver = webdriver.Chrome(executable_path=chromedriver)
Ich denke, dass das Speicherziel des WEB-Treibers für jede Person unterschiedlich ist. Schreiben Sie es daher bitte neu. Auf diese Weise können Sie Google Chrome starten.
Wenn Sie eine Fehlermeldung erhalten, müssen Sie den WEB-Treiber und die Chrome-Version abgleichen. Möglicherweise müssen Sie auch Berechtigungen festlegen, damit der WEB-Treiber ausgeführt werden kann. Überprüfen Sie daher die Fehlerdetails und ergreifen Sie die entsprechenden Maßnahmen.
Zu diesem Zeitpunkt können Sie den Browser bedienen und verschiedene Vorgänge ausführen.
Sobald Sie den Browser öffnen, bleibt er geöffnet, bis Sie ihn schließen. Vergessen Sie nicht, es fallen zu lassen, da das Öffnen in großer Anzahl Ressourcen verbraucht.
Sie können es auch im "Headerless" -Modus öffnen, wenn Sie Selen verwenden. Der "Headerless" -Modus ist ein Mechanismus, der den Browser hinter die Kulissen bewegt, ohne ihn sichtbar zu starten.
Dies ist ein sehr praktischer Modus, da dadurch Ressourcen gespart werden und Sie Selenium auf Linux-Servern verwenden können.
Erstellen Sie zum Schreiben eine Variable, um die Einstellung "Option" des Browsers hinzuzufügen Fügen Sie die Einstellung "headerless" hinzu und fügen Sie sie dem Argument der WEB-Treiberaufrufmethode hinzu.
Option variable = webdriver.ChromeOptions ()
Optionale Variable .add_argument ('--headless')
Treibervariable = webdriver.Chrome (options = option variable)
from selenium import webdriver
#Treibereinstellungen
chromedriver = "Vollausweis des Fahrers"
#Optionseinstellung
options = webdriver.ChromeOptions()
options.add_argument('--headless')
#Fahreranruf
driver = webdriver.Chrome(executable_path=chromedriver,
options=options)
Wir werden mit den Variablen arbeiten, wenn Selen aufgerufen wird. Da wir es früher mit dem Variablennamen "Treiber" aufgerufen haben, werden wir es von nun an als "Treibervariable" bezeichnen.
Zugriff auf die Website
Treibervariable .get (URL)
Geben Sie zur Ausführung ein.
driver.get(URL)
Gehen wir als Testversion zu meiner HP.
driver.get('http://www.otupy.net')
Sie können die URL eingeben, um bei jeder Ausführung auf die Site zuzugreifen. Es wird einige Zeit dauern, bis alle Websites angezeigt werden. Warten Sie daher eine Weile, bevor Sie weitere Vorgänge ausführen.
Sie können innerhalb der Site scrollen, indem Sie Javascript ausführen. Sie können ein Skript mit "execute_script" eingeben.
Treibervariable .execute_script (Javascript)
Geben Sie für den Javascript-Teil das Skript als Zeichen ein
window.scrollBy (0, Y)
und window.scrollTo (0, Y)
Verwenden Sie diese Option, um die Bildlaufposition zu bestimmen.
window.scrollBy (0, window.innerHeight);
für eine Seite
Wenn Sie window.scrollTo (0, document.body.scrollHeight);
angeben, können Sie nach unten scrollen.
Lass uns scrollen.
#Scrolle ein wenig
driver.execute_script("window.scrollBy(0, window.innerHeight);")
#Scrollen Sie nach unten
driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
Jetzt können Sie den Browser scrollen.
Um mit Ihrer Site arbeiten zu können, müssen Sie das Element finden, in dem Sie arbeiten möchten. Sie können auf der Site nach Elementen suchen, z. B. nach Eingabe-Orchideen.
Es gibt viele Möglichkeiten, ein Element zu finden
Treibervariable .find_element_by_XXXX
Sie können mit der Methode nach dem Wert jedes Attributs suchen.
Wenn ein Element gefunden wird, wird es als Datentyp namens "WebElement" extrahiert.
** Suche nach ID-Attribut **
Treibervariable .find_element_by_id (Wert des ID-Attributs)
** Suche nach Namensattribut **
Treibervariable .find_element_by_name (Wert des Namensattributs)
** Suche nach Klassennamen **
Treibervariable .find_element_by_class_name (Klassenname)
** Verlinke den Namen **
Treibervariable .find_element_by_tag_name (tag name)
** Suche nach link_text **
Treibervariable .find_element_by_link_text (Wert von link_text)
CSS_Selector
Treibervariable .find_element_by_css_selector (Wert von css_selector)
xpath
Treibervariable .find_element_by_xpath (Wert von xpath)
Sie müssen zuerst das Element finden, um damit arbeiten zu können. Wenn Sie ein Element mit der obigen Methode finden, weisen Sie es der "Elementvariablen" zu, und Sie können die folgenden Operationen ausführen.
Elementvariable .find_element_by_XXXX ()
Elementvariable. Operationsmethode
** Klicken Sie auf ein Element **
Elementvariable .click ()
** Geben Sie Zeichen in das Element ein **
Elementvariable .send_keys (Zeichen)
** Tasteneingabe mit Element **
Laden Sie zuerst die "Keys" -Bibliothek.
from selenium.webdriver.common.keys import Keys
Suchen Sie dann das Element und geben Sie den Schlüssel mit "send_keys" ein.
Elementvariable .send_keys (Schlüssel. Sonderschlüssel)
Folgende Schlüssel können behandelt werden.
Schlüssel | Keys |
---|---|
Enter-Taste | Keys.ENTER |
Alt "Taste(Kombiniert mit normalem Schlüssel) | Keys.ALT,"Schlüssel" |
← Taste | Keys.LEFT |
→ Taste | Keys.RIGHT |
↑ Taste | Keys.UP |
↓ Taste | Keys.DOWN |
Strg-Taste(Kombiniert mit normalem Schlüssel) | Keys.CONTROL,"Schlüssel" |
Schlüssel löschen | Keys.DELETE |
HOME-Schlüssel | Keys.HOME |
END-Taste | Keys.END |
ESCAPE-Schlüssel | Keys.ESCAPE |
gleich | Keys.EQUALS |
BEFEHLSTASTE | Keys.COMMAND |
F1-Taste | Keys.F1 |
shift Taste(Kombiniert mit normalem Schlüssel) | Keys.SHIFT,"Schlüssel" |
Bild-ab-Taste | Keys.PAGE_DOWN |
Bild-auf-Taste | Keys.PAGE_UP |
Leertaste | Keys.SPACE |
Eingabetaste | Keys.RETURN |
Tab-Taste | Keys.TAB |
Sie können den Quellcode der Seite als Zeichenfolge abrufen.
Treibervariable .page_source
driver.page_source
Nach der Erfassung kann die Analyse mit einer Bibliothek wie "BeautifulSoup" durchgeführt werden.
Mit Selen, mit normalen Schabetechniken Dies ist praktisch, da Sie leicht Informationen erhalten können, die nicht abgerufen werden können.
Wenn Sie Probleme beim Abrufen von Daten haben, versuchen Sie es mit Selen. Wenn Sie dies tun können, erhalten Sie überwältigende Daten.
25 Tage, bis Sie Ingenieur werden
HP von Otsu py: http://www.otupy.net/
Youtube: https://www.youtube.com/channel/UCaT7xpeq8n1G_HcJKKSOXMw
Twitter: https://twitter.com/otupython