Scraping mit Selen in Python (Basic)

Ich habe mich für das Scraping entschieden und versucht, den Browser mit Selenium zu betreiben, daher werde ich es kurz zusammenfassen.

Was wurde verwendet

Bereiten Sie einen Treiber für Ihren Browser vor

Um den Browser zu bedienen, muss für jeden Browser ein Treiber vorbereitet werden. Da wir dieses Mal Chrome verwenden, laden Sie ChromeDriver von der [offiziellen Website] herunter (http://www.seleniumhq.org/projects/webdriver/).

Installieren Sie Selen

Installieren Sie Selen mit Pip

pip install selenium

Versuchen Sie, die Webseite zu öffnen

Browser öffnen

webdriver.Chrome(driver_path)



 Webseite öffnen

#### **`driver.get(URL)`**
```get(URL)


 Webseite schließen

#### **`driver.close()`**
```close()


 Beenden Sie den Browser (schließen Sie alle Fenster)

#### **`driver.quit()`**
```quit()


``` python
from selenium import webdriver
driver = webdriver.Chrome(driver_path)
driver.get(URL)
driver.close()
driver.quit()

Versuchen Sie, auf das Element zuzugreifen

Um auf das HTML-Element zuzugreifen, können Sie das Element aus ID, Klasse, Name usw. angeben und abrufen.

Referenz

Holen Sie sich durch ID

driver.find_element_by_id('ID')



 Holen Sie sich nach Klasse

#### **`driver.find_element_by_class_name('CLASS_NAME')`**
```find_element_by_class_name('CLASS_NAME')


 Holen Sie sich mit Namen

#### **`driver.find_element_by_name('NAME')`**
```find_element_by_name('NAME')


 Holen Sie sich mit Link-Text

#### **`driver.find_elements_by_link_text('LINK_TEXT')`**
```find_elements_by_link_text('LINK_TEXT')


 Erhalten Sie verschachtelte Elemente, indem Sie den Pfad angeben

#### **`driver.find_elements_by_xpath(".//a")`**

Aktion

Betreiben Sie die Webseite, indem Sie auf das erfasste Element reagieren.

Referenz

Drück den Knopf

driver.find_element_by_id('Btn').click()



 Geben Sie Zeichen in das Formular ein

#### **` driver.find_element_by_name('From').send_keys("text") `**

bereithalten

Oft wird der Prozess ausgeführt und es tritt ein Fehler auf, bevor der Bildschirm vollständig geladen wurde. Sie können einige Sekunden warten, bis die erforderlichen Elemente vorhanden sind.

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

WebDriverWait(driver, WAIT_SECOND).until(EC.presence_of_element_located((By.CLASS_NAME, 'Btn')))

Browser-Betrieb

Lassen Sie es uns leicht basierend auf den oben genannten betreiben.

Versuchen Sie, auf die Schaltfläche zu klicken

Zum Beispiel, wenn Sie auf einer bestimmten Site auf die Schaltfläche "Kaufen" klicken möchten

スクリーンショット_2016-11-21_13_22_52.png スクリーンショット_2016-11-21_13_27_44.png
from selenium import webdriver
driver = webdriver.Chrome(driver_path)
driver.get(URL)
driver.find_element_by_class_name('new_addToCart').click()
driver.quit()

Auf diese Weise ruft find_element_by_class_name () das Element ab und click () bewirkt die Klickaktion.

Versuchen Sie, Text einzugeben

Geben Sie ein Suchwort in das Suchfeld ein und drücken Sie die Suchtaste.

スクリーンショット_2016-11-21_13_49_25.png スクリーンショット_2016-11-21_13_48_53.png
from selenium import webdriver
driver = webdriver.Chrome(driver_path)
driver.get(URL)
driver.find_element_by_id('searchWords').send_keys("search text")
driver.find_element_by_id('searchBtn').click()	

Dadurch wird automatisch "Suchtext" in das Suchfeld eingegeben und gesucht.

Zusammenfassung

Wenn Sie die grundlegenden Vorgänge wie das Drücken von Tasten und das Eingeben von Text lernen, haben Sie den Eindruck, dass die meisten Vorgänge einfach sind. Schließlich ist der Vorteil der Parallelverarbeitung durch die programmgesteuerte Ausführung von Browseroperationen groß. Wenn Sie jedoch viele Browser starten, wird Ihr PC extrem schwer, daher müssen Sie vorsichtig sein.

Recommended Posts