


Ce que vous devez savoir sur Selenium en utilisant le résumé de positionnement CSS
Cet article vous apporte des connaissances pertinentes sur l'utilisation par Selenium du résumé du positionnement CSS. Le positionnement CSS est plus rapide et la syntaxe est plus simple. J'espère qu'il sera utile à tout le monde.
La plupart des gens utilisent le positionnement XPath lorsqu'ils utilisent Selenium pour positionner des éléments. En fait, le positionnement CSS a également sa valeur. Il est plus rapide et la syntaxe est plus concise. Symboles courants :
# représente le sélecteur d'identifiant
Un espace représente également les éléments enfants, mais tous les éléments enfants descendants, équivalent à xpath Le chemin relatif de
2. CSS : positionnement de l'attribut css peut être directement positionné sur
如下是百度输入框的的html代码: <input>css via les trois attributs réguliers de l'identifiant, de la classe et de l'étiquette de l'élément. Utilisez le signe # pour représenter l'attribut id, tel que : #kw
Utilisez css. Indique l'attribut de classe, tel que : .s_ipt
css utilise directement le nom de la balise sans aucun identifiant, tel que : input 3. CSS : d'autres attributs
css peuvent être positionnés à travers les trois attributs conventionnels de tag, class et id, ou il peut se positionner via d'autres attributs
以下是定位其它属性的格式[name=wd] [autocomplete='off'][maxlength='255']4. CSS : étiquette css peut localiser des éléments grâce à la combinaison de balises et d'attributs
input.s_ipt input#kw input[id='kw']5. CSS : relation hiérarchique
//form的id属性form#form>span>input
//form的class属性form.fm>span>input
6. CSS : index css peut également être localisé via les sous-éléments de positionnement de l'index Select控件第三个Opel
#select>select>option:nth-child(3)CheckBox第一个Volvo
#checkbox>input:nth-child(1)CheckBox第二个Saab
#checkbox>input:nth-child(4)RadioBox第二个Saab
#radio>input:nth-child(4)
7. CSS : opérations logiques css peut également implémenter des opérations logiques et faire correspondre deux attributs en même temps, ce qui est différent de xpath
[type='checkbox'][name='checkbox1']
8. Exemple de zone de recherche Baidu
Obtenir la recherche Baidu Examinons de plus près le positionnement CSS Zone de saisie de positionnement
Positionnement d'attribut unique
type selector driver.find_element_by_css_selector('input')id 定位 driver.find_element_by_css_selector('#kw')class 定位 driver.find_element_by_css_selector('.s_ipt')其他属性定位 driver.find_element_by_css_selector('[name='wd']')driver.find_element_by_css_selector("[type='text']")
Positionnement d'attribut combiné
id组合属性定位 driver.find_element_by_css_selector("input#kw")class组合属性定位 driver.find_element_by_css_selector("input.s_ipt")其他属性组合定位 driver.find_element_by_css_selector("input[name='wd']")仅有属性名,没有值也可以 driver.find_element_by_css_selector("input[name]")两个其他属性组合定位 driver.find_element_by_css_selector("[name='wd'][autocomplete='off']")9 En cliquant sur le bouton sur la page d'accueil de Baidu à titre d'exemple . Méthode de valeur d'attribut de correspondance floue
1>属性值由多个空格隔开,匹配其中一个值的方法
driver.find_element_by_css_selector("input[class~='btn']")2>匹配属性值为字符串开头的方法
driver.find_element_by_css_selector("input[class^='btn']")3>匹配属性值字符串结尾的方法
driver.find_element_by_css_selector("input[class$='s_btn']")
10. CSS et Xpath La différence de positionnementPositionnement des attributs
le CSS peut être directement positionné via les trois attributs réguliers de l'élément, de l'identifiant, de la classe et de l'étiquette
①. le signe # pour représenter l'attribut id, tel que :id="kw" peut être écrit comme : #kw
② utilise css pour représenter l'attribut de classe, tel que : class="s_ipt" peut être écrit comme. : .s_ipt
③. css utilise le nom de la balise directement sans aucun identifiant, tel que : input
Xpath
xpath peut également être transmis. Localisez l'identifiant, le nom et les attributs de classe de l'élément
① Utilisez xpath pour localiser via l'attribut id.
driver.find_element(By.XPATH, "//[@id='kw']")
driver.find_element(By.XPATH,"//[@name=' wd']")
③. Utilisez XPath pour localiser via l'attribut de classe
driver.find_element(By. ']")
Autres attributs
CSS
En plus de ce qui précède, le CSS peut également être positionné via d'autres attributs
driver.find_element(By.CSS_SELECTOR,"[name='wd']" )
② Le CSS est positionné via l'attribut autocomplete : driver.find_element(By. CSS_SELECTOR, ". [autocomplete='off']")
③.css est positionné via l'attribut type :
driver.find_element(By. CSS_SELECTOR, "[type ='text']")
Xpath
Sans les attributs ci-dessus, vous pouvez localisez-le via d'autres attributs
driver.find_element(By. Les pages CSS peuvent localiser des éléments grâce à la combinaison de balises et d'attributs
①. positions CSS grâce à la combinaison de balises et d'attributs de classe driver.find_element(By.CSS_SELECTOR, "input.s_ipt" )
③ CSS localise driver.find_element(By.CSS_SELECTOR, "input[id='kw']. ")
Xpath
①. Utilisez XPath pour localiser driver.find_element(By.XPATH, "//input[@autocomplete='off' ]")
②. Utilisez XPath via d'autres attributs. Localisez driver.find_element(By.XPATH,"//input[@id='kw']") via l'attribut id ③. Utilisez XPath pour localiser driver.find_element(By .XPATH,"//name[@id ='wd']")
Relation hiérarchique
CSS
① . CSS localise driver.find_element(By.CSS_SELECTOR, "form#form>span>input") via des relations hiérarchiques
②. .fm>span>input") via des relations hiérarchiques
Xpath
1. Si les attributs d'un élément ne sont pas évidents et ne peuvent pas être localisés directement, vous pouvez d'abord trouver son élément parent, trouver l'élément parent, puis trouver le niveau suivant à localisez-le
② Positionnez la zone d'entrée driver.find_element. (Par. [@id='form']/span/input")
Index
CSS
1. CSS peut également localiser les éléments enfants via l'option d'index :nth-child(1)
① Sélectionnez le premier élément enfant driver.find_element(By.CSS_SELECTOR,"select#nr>option:nth -child. (1)")
②. Sélectionnez le deuxième élément enfant driver.find_element(By.CSS_SELECTOR,"select#nr>option:nth-child(2)")
③ Sélectionnez le troisième élément enfant driver.find_element( By. CSS_SELECTOR,"select#nr>option:nth-child(3)")
Xpath
1. Il peut être positionné par tri
① Utilisez XPath pour localiser la première position driver.find_element(By.XPATH,"//. select [@id='nr']/option[1]")
②. Utilisez XPath pour localiser le deuxième driver.find_element(By.XPATH,"//select[@id='nr']/option[2] " )
③. Utilisez XPath pour localiser le troisième driver.find_element(By. .CSS_SELECTOR,"input:contains('kw')")
Xpath
1. Correspondance floue puissante de XPath 2. by_partial_link, positionnement de correspondance floue
driver.find_element(By.XPATH,"//*[contains(text (),'hao123')]")
11. Résumé
Tests automatisés Il existe deux méthodes de positionnement XPATH et CSS courantes pour les tests Web. les éléments dans Python+Selenium
Le positionnement XPATH et le positionnement CSS sont très similaires, et la fonction XPATH Il est plus puissant, mais la méthode de positionnement CSS est plus rapide, mais certains navigateurs ne prennent pas en charge le positionnement CSS, et il est généralement plus courant d'utiliser XPath positionnement que CSS lors des tests automatisés
(Partage vidéo d'apprentissage :
Tutoriel vidéo CSS)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

J'ai eu cette question l'autre jour. Ma première pensée est: une question étrange! La spécificité concerne les sélecteurs, et les rubriques ne sont pas des sélecteurs, donc ... non pertinents?

Oui, vous le pouvez, et cela n'a pas vraiment d'importance dans quel ordre. Un préprocesseur CSS n'est pas requis. Il fonctionne dans CSS ordinaire.

Vous devriez à coup sûr définir des en-têtes de cache éloignés sur vos actifs comme CSS et JavaScript (et des images et polices et quoi que ce soit d'autre). Cela dit au navigateur

De nombreux développeurs écrivent sur la façon de maintenir une base de code CSS, mais peu d'entre eux écrivent sur la façon dont ils mesurent la qualité de cette base de code. Bien sûr, nous avons

Avez-vous déjà eu un formulaire qui devait accepter un petit texte arbitraire? Comme un nom ou autre chose. C'est exactement à quoi sert. Il y a beaucoup de

Je suis tellement excité de me diriger vers Zurich, en Suisse pour la conférence de Front (j'adore ce nom et URL!). Je n'ai jamais été en Suisse auparavant, donc je suis excité

L'un de mes développements préférés dans le développement de logiciels a été l'avènement de Serverless. En tant que développeur qui a tendance à s'enliser dans les détails

Dans cet article, nous utiliserons une démo de magasin de commerce électronique que j'ai construit et déployé sur Netlify pour montrer comment nous pouvons faire des itinéraires dynamiques pour les données entrantes. C'est assez


Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

MinGW - GNU minimaliste pour Windows
Ce projet est en cours de migration vers osdn.net/projects/mingw, vous pouvez continuer à nous suivre là-bas. MinGW : un port Windows natif de GNU Compiler Collection (GCC), des bibliothèques d'importation et des fichiers d'en-tête librement distribuables pour la création d'applications Windows natives ; inclut des extensions du runtime MSVC pour prendre en charge la fonctionnalité C99. Tous les logiciels MinGW peuvent fonctionner sur les plates-formes Windows 64 bits.

DVWA
Damn Vulnerable Web App (DVWA) est une application Web PHP/MySQL très vulnérable. Ses principaux objectifs sont d'aider les professionnels de la sécurité à tester leurs compétences et leurs outils dans un environnement juridique, d'aider les développeurs Web à mieux comprendre le processus de sécurisation des applications Web et d'aider les enseignants/étudiants à enseigner/apprendre dans un environnement de classe. Application Web sécurité. L'objectif de DVWA est de mettre en pratique certaines des vulnérabilités Web les plus courantes via une interface simple et directe, avec différents degrés de difficulté. Veuillez noter que ce logiciel

Listes Sec
SecLists est le compagnon ultime du testeur de sécurité. Il s'agit d'une collection de différents types de listes fréquemment utilisées lors des évaluations de sécurité, le tout en un seul endroit. SecLists contribue à rendre les tests de sécurité plus efficaces et productifs en fournissant facilement toutes les listes dont un testeur de sécurité pourrait avoir besoin. Les types de listes incluent les noms d'utilisateur, les mots de passe, les URL, les charges utiles floues, les modèles de données sensibles, les shells Web, etc. Le testeur peut simplement extraire ce référentiel sur une nouvelle machine de test et il aura accès à tous les types de listes dont il a besoin.

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit