0
votes

Send_Keys Fonction Triggers Message d'erreur: 'Message: Elément non interactable'

IM à l'aide de sélénium pour remplir ce formulaire HTML, mais lorsqu'il s'agit de saisir les données, il est indiqué "élément non interactable". Je suis capable de cliquer sur l'élément, cependant, l'envoi d'une chaîne produit une erreur. Comment puis-je résoudre ce problème? XXX

Merci!


0 commentaires

3 Réponses :


1
votes

Dans la page Vous accédez, il y a 2 éléments renvoyés avec le sélecteur by_xpath ('// * [@ Id = "Town"]') , l'un est un "MM-UI -Autocomplète ", l'autre est une" entrée ".

L'utilisateur "mm-ui-autocomplete" n'est pas visible ni interactif à un utilisateur réel, c'est probablement ce qui lance l'exception que vous rencontrez, et sélénium prend toujours le premier match quand il y a plus d'un élément renvoyé par le sélecteur, Ainsi, en supposant que vous souhaitiez taper quelque chose sur le champ "localIDAD", il sélectionne le mauvais élément.

Essayez de changer votre sélecteur vers by_xpath ('// entrée [@ ID = "Town"]') et voyez si cela fonctionne.

espère que cela aide.


1 commentaires

Oui merci! Je me sens si stupide, j'avais passé un moment à essayer de comprendre cela.



1
votes

Pouvez-vous essayer avec ce sélecteur CSS: xxx pré>

code strong>: p> xxx pré>

le code XPath (// * [@ @ id = "ville"]) code> que vous avez utilisé a deux entrées: p>

un avec mm-ui-autocomplete code> tag et une avec entrée code> tag. P>

Prévoyez toujours la préférence au sélecteur CSS sur XPath. Il est plus stable que xpath. P>

Si vous ne voudriez pas utiliser sélecteur CSS, vous pouvez utiliser XPath comme ceci: p>

driver.find_element_by_xpath("//input[@id='town']").send_keys('1')


0 commentaires

0
votes

Dans mon cas, il arrive que le Find_Element ne fonctionnait pas avant le chargement de Frontend fini.

J'ai résolu ceci en ajoutant Sleep (2) avant le Find_Element_by_xpath . Vous devrez importer la fonction par à partir du temps d'importation de temps .


0 commentaires