[PYTHON] Comment rendre le sélénium aussi léger que possible

Exigences

-Bien qu'il soit tard, Razpai a également essayé de gratter la société de cartes. -Depuis que j'ai essayé de gratter avec Selenium en utilisant Raspeye Zero, de nombreux délais d'attente se sont produits. -Nous avons permis de mettre en œuvre le grattage le plus légèrement possible. -Gérer les mots de passe à vos risques et périls. ..

code

from selenium import webdriver 
from selenium.webdriver.chrome.options import Options 
from selenium.webdriver.common.by import By 
from selenium.webdriver.support import expected_conditions as EC 
from selenium.webdriver.support.ui import WebDriverWait 
import time
from bs4 import BeautifulSoup as BS 
import re
import requests

 options = Options()
 options.add_argument("no-sandbox")
 options.add_argument("--disable-extensions")
 options.add_argument("--headless")
 options.add_argument('--disable-gpu')  
 options.add_argument('--ignore-certificate-errors')
 options.add_argument('--allow-running-insecure-content')
 options.add_argument('--disable-web-security')
 options.add_argument('--disable-desktop-notifications')
 options.add_argument("--disable-extensions")
 options.add_argument('--lang=ja')
 options.add_argument('--blink-settings=imagesEnabled=false')
 options.add_argument('--disable-dev-shm-usage')
 options.add_argument('--proxy-server="direct://"')
 options.add_argument('--proxy-bypass-list=*')    
 options.add_argument('--start-maximized')
 driver = webdriver.Chrome(options=options)

 driver.get (http:///~~~)

Aussi, afin de réduire la plage de lecture, lisez jusqu'à la classe immédiatement avant de gratter. Décrit avec un délai maximum

 wait = WebDriverWait(driver, 300);
 element=wait.until(EC.presence_of_element_located((By.CLASS_NAME,"fluid")));

Après cela, lisez et traitez avec BeautifulSoup

 res = driver.page_source.encode('utf-8')
 print("loading")
 soup=BS(res,"html.parser")

Maintenant, j'ai réussi à éviter le délai d'attente.

Recommended Posts

Comment rendre le sélénium aussi léger que possible
Comment déboguer le sélénium
Comment collecter les tweets de tweetid dès que possible (72000 tweets / heure)
Comment faire une traduction japonais-anglais
Comment créer un bot slack
Comment créer un robot - Avancé
Comment créer une fonction récursive
[EC2] Comment exécuter le pilote Web sélénium
[Blender] Comment créer un plug-in Blender
[Blender] Comment rendre les scripts Blender multilingues
Comment créer un robot - Basic
Comment créer des couches AWS Lambda lors de l'exécution de sélénium × chrome sur AWS Lambda
Essayez de créer un logiciel de capture aussi précis que possible avec python (1)
Comment rendre les caractères de Word Cloud monochromatiques
[Python] Comment rendre une classe itérable
Comment installer CatBoost [à partir de janvier 2020]
[Cocos2d-x] Comment créer une liaison de script (partie 2)
Comment créer une clé USB à démarrage multiple (compatible Windows 10)
Comment créer un indicateur personnalisé Backtrader
Comment créer un plan de site Pelican
[Cocos2d-x] Comment créer une liaison de script (partie 1)
Essayez de créer un logiciel de capture aussi précis que possible avec python (2)
Dédié aux débutants! Comment apprendre la programmation avec le moins d'argent possible
Comment créer un système de dialogue dédié aux débutants
Comment déguiser un fichier ZIP en fichier PNG
Comment créer un pilote de périphérique Linux intégré (11)
Comment faire correspondre WTForms TextArea à la suppression de fichier
Comment créer un pilote de périphérique Linux intégré (8)
Comment créer un plug-in Spigot (pour les débutants Java)
Comment créer un pilote de périphérique Linux intégré (1)
Comment créer un pilote de périphérique Linux intégré (4)
Comment rendre plusieurs noyaux sélectionnables sur Jupyter
Comment créer un dictionnaire avec une structure hiérarchique.
Comment créer un pilote de périphérique Linux intégré (7)
Comment créer un pilote de périphérique Linux intégré (2)
Comment créer une sortie JSON Scintillante en japonais
Comment créer un pilote de périphérique Linux intégré (3)
Comment créer un plug-in QGIS (génération de package)
J'ai lu "Comment créer un laboratoire de piratage"
Comment créer un pilote de périphérique Linux intégré (6)
Comment créer le plugin Python de Substance Painter (Introduction)
Comment générer "Ketsumaimo" en standard en Python
Comment créer un pilote de périphérique Linux intégré (5)
Comment créer un pilote de périphérique Linux intégré (10)
Comment rendre le Python des débutants plus rapide [numpy]
Comment apporter des modifications à l'interpréteur Python dans Pycharm
Comment créer un pilote de périphérique Linux intégré (9)
Inspiré par "Comment créer du JavaScript purement fonctionnel"
Comment faire pour qu'AWS rekognition reconnaisse les fichiers image locaux
[Suite] Inspiré par "Comment créer du JavaScript purement fonctionnel"
Comment faire reconnaître Yubico Yubikey par Manjaro Linux
Expliquez en détail comment créer un son avec python
Comment faire un jeu de tir avec toio (partie 1)
Comment faire un test unitaire Part.2 Conception de classe pour les tests
Comment exporter Cybozu Live My Calendar sous iCalendar
Comment créer un outil CLI interactif avec Golang