[PYTHON] [EC2] Einführung in das Schaben mit Selen (Textextraktion und Screenshot)

[EC2] Einführung in das Schaben mit Selen

Zusammenfassung des Ablaufs bis zum Extrahieren des Elements der angegebenen URL mit Python-Selen auf EC2.

Dinge die zu tun sind

--Installation des Chrome-Treibers

Annahme

Herstellen einer Verbindung zu einer EC2-Instanz mit ssh So erstellen Sie eine Python3-Umgebung auf EC2

1. 1. Installation des Chrome-Treibers

(1) Wechseln Sie von der offiziellen Seite von Chrome Driver zur DL-Seite der Version, die Sie herunterladen möchten.

(2) Kopieren Sie die Linkadresse für Linux64.

③ DL und dekomprimieren

python


#Wechseln Sie in das tmp-Verzeichnis
$ cd/tmp/

#Chromedriver herunterladen (URL ist Kopie)
$ wget https://chromedriver.storage.googleapis.com/83.0.4103.39/chromedriver_linux64.zip


#Auftauen
$ unzip chromedriver_linux64.zip

#Entpackte Datei/user/Bewegen Sie sich unter bin
$ sudo mv chromedriver /usr/bin/chromedriver

2. Chrominstallation

#
$ curl https://intoli.com/install-google-chrome.sh | bash

Complete!   <-
Successfully installed Google Chrome!


#
$ sudo mv /usr/bin/google-chrome-stable /usr/bin/google-chrome


#
$ google-chrome --version && which google-chrome

Google Chrome 83.0.4103.61 <- --
/usr/bin/google-chrome   <-

Installationserfolg Dateiname geändert Versionsbestätigung Versionsausführungsergebnis welches Ausführungsergebnis> Inhalt jedes Befehls

3. 3. Installieren Sie Selen

$ pip3 install selenium

## 4. Installation japanischer Schriftarten ``` $ sudo yum install ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts ipa-pmincho-fonts ```

Wenn Sie es nicht installieren, werden die Zeichen beim Erfassen des Bildschirms verstümmelt.

Beispiel für verstümmelte Zeichen


## 5. Extrahieren Sie den Text der angegebenen URL (text.py)

① Erstellen Sie eine text.py-Datei im Benutzerordner

python


$ cd ~
$ touch text.py
$ vi text.py

② Der vim-Editor wird gestartet. Kopieren Sie daher Folgendes. └ Drücken Sie die Taste "i", um den Einfügemodus aufzurufen. └ Kopieren und Einfügen ist "Umschalt + Ins" (oder klicken Sie mit der rechten Maustaste und wählen Sie Einfügen)

python


#-*- coding: utf-8 -*-

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.headless = True

driver = webdriver.Chrome(options=options)

#Angabe der URL
driver.get("https://www.google.co.jp/")

#Geben Sie das zu kratzende Element an
element_text = driver.find_element_by_id("hptl").text

print(element_text)

driver.quit()

③ Speichern Sie nach dem Einfügen den folgenden VIM-Editor und beenden Sie den Vorgang. esc + :wq + Enter

④ Führen Sie die erstellte Datei aus

$ python3 text.py

#Erfolg, wenn Folgendes angezeigt wird
Über Google Store
image.png

Das Verschrotten des Textes oben rechts in Google Top ist abgeschlossen.

Bedeutung jedes Scraping-Codes


## Holen Sie sich einen Screenshot der angegebenen URL (capture.py)

① Erstellen Sie eine Datei capture.py im Benutzerordner

python


$ cd ~
$ touch capture.py
$ vi capture.py

② Der vim-Editor wird gestartet. Kopieren Sie daher Folgendes. └ Drücken Sie die Taste "i", um den Einfügemodus aufzurufen. └ Kopieren und Einfügen ist "Umschalt + Ins" (oder klicken Sie mit der rechten Maustaste und wählen Sie Einfügen)

python


#-*- coding: utf-8 -*-

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

options = Options()
options.headless = True

#Geben Sie die zu erfassende Bildschirmgröße an
options.add_argument('--window-size=1280,1024')

driver = webdriver.Chrome(options=options)

#Geben Sie die URL an
driver.get("https://www.google.co.jp/")

#Geben Sie den Dateinamen und die Erweiterung des Captures an
driver.save_screenshot('googletop.png')


driver.quit()

③ Speichern Sie nach dem Einfügen den folgenden VIM-Editor und beenden Sie den Vorgang. esc + :wq + Enter

④ Führen Sie die erstellte Datei aus

$ python3 capture.py

#Erfolgreich, wenn die folgenden Dateien im selben Verzeichnis erstellt werden
$ ls
googletop.png

Sie können relativ einfach kratzen. Ändern Sie danach die URL, ändern Sie die zu extrahierenden Elemente und passen Sie sie an.

Recommended Posts

[EC2] Einführung in das Schaben mit Selen (Textextraktion und Screenshot)
Scraping mit lxml und Speichern in MySQL
[EC2] So machen Sie mit Selen eine Bildschirmaufnahme Ihres Smartphones
Ich habe versucht, Web-Scraping mit Python und Selen
Erste Schritte mit Web Scraping
[Python] Einführung in das Scraping | Programm zum Öffnen von Webseiten (Selenium-Webdriver)
Starten Sie mit Python zu Selen
Web Scraping mit Selenium (Python)
Einführung in discord.py (3) Verwenden von Stimme
Betreiben Sie Firefox mit Selen aus Python und speichern Sie die Bildschirmaufnahme
[Einführung in Python3 Tag 1] Programmierung und Python
Scraping mit Python, Selen und Chromedriver
[EC2] So führen Sie einen Selen-Webdriver aus
Selen und Python zum Öffnen von Google
Ich habe das Schaben mit Selen gelernt, um ein Vorhersagemodell für Pferderennen zu erstellen.