[PYTHON] Un mémorandum lors de l'acquisition automatique avec du sélénium

La description

J'ai créé une application pour obtenir automatiquement des informations sur un certain site. https://github.com/jajaja12345-code Je vais l'écrire comme un mémorandum de ce que j'ai vérifié à ce moment-là.

mémorandum

Il existe plusieurs noms de classe

Lorsqu'il y a un espace entre les noms de classe <p class = "servings_for yield"> Quand des choses comme find_element_by_css_selector("servings_for yield") Ensuite, une erreur se produira. Par conséquent, écrivez comme suit find_element_by_css_selector(".servings_for.yield")

référence Que faire si vous ne pouvez pas obtenir un élément avec un espace par by_class_name dans le sélénium et qu'une erreur se produit

Obtenez plusieurs éléments

Faites-le avec find_elements. des éléments, pas des éléments

référence [Que faire lorsque l'objet WebElement n'est pas itérable apparaît dans le sélénium](http://www.asnm4.com/2018/11/selenium%E3%81%A7webelement-object-is-not-iterable%E3%81% 8C% E5% 87% BA% E3% 82% 8B% E3% 81% A8% E3% 81% 8D% E3% 81% AE% E5% AF% BE% E5% 87% A6% E6% 96% B9% E6% B3% 95 /)

Attraper NoSuchElementException

Vérifiez s'il existe avec une instruction try et interceptez NoSuchElementException avec except (Plusieurs exceptions peuvent être décrites)

référence Bases de Python et Selenium Gestion des exceptions Python (essayez, sauf, sinon, enfin)

Définition du traitement qui ne fait rien

Utiliser la déclaration de réussite

référence Je veux définir une fonction qui ne fait rien

Réglez le temps d'attente jusqu'à ce que l'élément soit trouvé à la fois

driver.implicitly_wait(10) Attendez 10 secondes pour trouver chaque élément du pilote.

référence [Python] implicitly_wait ... Définit le temps d'attente jusqu'à ce que l'élément de pilote spécifié soit trouvé

Impressions

Je veux pouvoir entrer à partir de mon smartphone.

Recommended Posts

Un mémorandum lors de l'acquisition automatique avec du sélénium
Quand j'ai essayé de créer un VPC avec AWS CDK mais que je n'ai pas pu le faire
Quand j'ai essayé de créer un environnement virtuel avec Python, cela n'a pas fonctionné
J'ai essayé de créer automatiquement un rapport avec la chaîne de Markov
J'ai essayé de commencer avec Hy ・ Définir une classe
J'ai trébuché lorsque j'ai essayé d'installer Basemap, donc un mémorandum
J'ai essayé de commencer avec Hy
[Python] Un mémo que j'ai essayé de démarrer avec asyncio
J'ai essayé de faire un processus d'exécution périodique avec Selenium et Python
J'ai essayé de me connecter automatiquement à Twitter avec du sélénium (RPA, scraping)
Quand j'obtiens une erreur de pilote chrome dans Selenium
J'ai essayé d'obtenir des données CloudWatch avec Python
J'obtiens une UnicodeDecodeError lors de l'exécution avec mod_wsgi
J'ai créé un outil pour parcourir automatiquement plusieurs sites avec Selenium (Python)
J'obtiens un UnicodeDecodeError en essayant de me connecter à oracle avec python sqlalchemy
[Outlook] J'ai essayé de créer automatiquement un e-mail de rapport quotidien avec Python
J'ai essayé de faire un processus périodique avec CentOS7, Selenium, Python et Chrome
J'ai essayé de lire et d'enregistrer automatiquement avec VOICEROID2 2
J'ai essayé de démarrer avec le script python de blender_Part 01
Lorsque j'ai essayé de changer le mot de passe root avec ansible, je ne pouvais pas y accéder.
J'ai essayé de lire et d'enregistrer automatiquement avec VOICEROID2
J'ai essayé de démarrer avec le script python de blender_Partie 02
J'ai essayé de créer facilement un système de présence entièrement automatique avec Selenium + Python
J'ai essayé un RPA simple pour me connecter avec du sélénium
Dans IPython, quand j'ai essayé de voir la valeur, c'était un générateur, donc je l'ai inventé quand j'étais frustré.
Je voulais connaître le nombre de lignes dans plusieurs fichiers et j'ai essayé de l'obtenir avec une commande
J'ai essayé de générer automatiquement la chaîne de caractères à entrer dans M. Adjustment avec Python
[Python] J'ai essayé de créer automatiquement un rapport quotidien de YWT avec la messagerie Outlook
Un débutant a essayé de colorier un dessin au trait avec un chainer. J'ai pu le faire.
Quand j'essaye de pousser avec heroku, ça ne marche pas
J'ai essayé de résoudre le problème d'optimisation des combinaisons avec Qiskit
Je veux assister automatiquement à des cours en ligne avec Python + Selenium!
J'ai essayé "Comment obtenir une méthode décorée en Python"
J'ai essayé de trier une colonne FizzBuzz aléatoire avec un tri à bulles.
Activer automatiquement virtualenv lorsque cd vers un répertoire avec zsh
J'ai essayé d'écrire dans un modèle de langage profondément appris
J'ai essayé de créer un projet en utilisant Python sur Docker avec PyCharm, mais cela a fonctionné avec Docker Compose
Quand j'ai essayé d'installer PIL et matplotlib dans un environnement virtualenv, j'en étais accro.
Depuis qu'il y avait Doppelgenger, j'ai essayé de le distinguer avec l'intelligence artificielle (rires) (Partie 2)
J'ai créé un serveur avec socket Python et ssl et j'ai essayé d'y accéder depuis le navigateur
Depuis qu'il y avait Doppelgenger, j'ai essayé de le distinguer avec l'intelligence artificielle (rires) (Partie 1)
[5e] J'ai essayé de créer un certain outil de type Authenticator avec python
J'ai essayé d'obtenir une base de données sur les courses de chevaux en utilisant Pandas
[2nd] J'ai essayé de créer un certain outil de type Authenticator avec python
[3ème] J'ai essayé de créer un certain outil de type Authenticator avec python
J'ai écrit un script pour vous aider à démarrer avec AtCoder à grande vitesse!
J'obtiens une erreur en essayant d'installer maec 4.0.1.0 avec pip
J'ai essayé de créer une liste de nombres premiers avec python
J'ai essayé d'obtenir une liste de noms AMI en utilisant Boto3
Une note à laquelle j'étais accro lors de la création d'une table avec SQL Alchemy
J'ai essayé de créer une application de notification de publication à 2 canaux avec Python
J'ai essayé de démarrer avec Bitcoin Systre le week-end
J'ai essayé de créer des taureaux et des vaches avec un programme shell
J'ai essayé de créer une application todo en utilisant une bouteille avec python
[4th] J'ai essayé de créer un certain outil de type Authenticator avec python