0
votes

Impossible de sélectionner la valeur du menu déroulant

 Entrez la description de l'image ici Donc, je reçois des données de ce site Site Suprême . Un utilisateur a déjà défini l'élément et la couleur, qui était facile à comprendre. Maintenant, je ne peux pas comprendre comment choisir la taille dans le menu déroulant. J'ai essayé ce code et d'autres variantes différentes, mais ils ne semblent pas fonctionner xxx

de sorte que Select_by_visible_text ne fonctionne pas. Quelles autres suggestions et façons d'essayer d'aller ici? Merci.


2 commentaires

Pouvez-vous partager l'outil HTML à l'aide de l'outil Snippet via Modifier comme je ne peux pas voir le site américain.


@Qhararr a ajouté l'extrait


3 Réponses :


0
votes

Votre xPath n'est pas correct. Et utiliser webDriverwait aidera également.

Essayez ceci: xxx


2 commentaires

Fichier "C: \ Utilisateurs \ Artjo \ Desktop \ Python \ Tkinter3.py", ligne 62, dans Web Select = Select = Sélectionnez (webDriverwait (pilote, 10) .Until (EC.PRESENCE_OF_ELEMENT_LOCATED (((by.xpath, '// Sélectionnez [ @ id = "Taille"] ')'))))) Fichier "C: \ Utilisateurs \ Artjo \ AppData \ Local \ Programmes \ Python \ Python37-32 \ Li B \ Sites-Packages \ Sele Nium \ WebDriver \ Supo RT \ wait.py ", ligne 80, dans jusqu'à ce que soulevez TimeoutException (message, écran, StackTrace) selenium.common.Exception.timeoutException: Message:


Je suppose que le site Web se charge différent de la région. Je ne peux pas ouvrir le lien complet que vous avez partagé et la source HTML est également différente dans votre capture d'écran. Vous avez mentionné select_by_visible_text ne fonctionne pas , avez-vous eu une erreur?



0
votes

Vous pouvez utiliser le XPath et cliquer sur l'option directement.

driver.find_element_by_xpath('//select[@id="s"]//option[normalize-space(.)="XLarge"]').click()


0 commentaires

0
votes

Vous pouvez attendre jusqu'à ce que Clickable pour le parent puis la présence d'option. Vous pouvez sélectionner des options selon leur attribut xxx


2 commentaires

Celui-ci a fonctionné. Maintenant, je dois juste comprendre comment utiliser cela correctement, car l'utilisateur sélectionne la taille dans la liste déroulante, et non les chiffres de la valeur, ainsi que comment puis-je associer ce choix à partir d'une liste déroulante avec le numéro qui doit être entré dans le numéro. sélecteur? Donc, fondamentalement rendre votre code dynamique de code en fonction du choix des utilisateurs. Des pensées?


Vous pouvez essayer de combiner les réponses données ici (mienne avec supputuri) par ex. WebDriverwait (pilote, 10). JUNTIL (EC.PRESENCE_OF_ELEMENT_LOCAT ((((XXPATH, '//SELECTE[@ID="s"]//option[normalize-space(.)="xlarge "]'))) Cliquez ()