Le sélénium Python: find_element_by_css_selector() à l'aide de :contains()

En Sélénium sur Python, je suis en train de sélectionner un élément à l'aide de

driver = webdriver.Firefox()
driver.find_element_by_css_selector("td:contains('hello world')")

Qui me donne l'erreur:

>>>> selenium.common.exceptions.WebDriverException: Message: u'An invalid or illegal string was specified' 

Je peux sélectionner des éléments à l'aide de beaucoup de différents sélecteurs CSS de cette façon, mais en utilisant :contains() semble toujours jeter une erreur. NOTE: je reçois le même message d'erreur lorsque j'essaie d'utiliser:

driver.find_element_by_xpath("//td[contains(text(),'hello world')]")

Veuillez en informer. Merci!

EDIT: RÉSOLU!

Problème résolu! Je vous remercie beaucoup pour votre aide! J'ai eu deux erreurs importantes:
1.) J'ai pensé que :contains() a été accepté sélecteur de css3 (il s'avère qu'elle n'est pas partie de la spec actuelle, c'est pourquoi je ne pouvais pas sélectionner cette façon)
2.) Le xpath sélecteur aurait été bien sauf que j'ai été en utilisant un analyseur qui suppose xpath n'aurait jamais d'espace, de sorte qu'il s'est déchiré les arguments par des espaces. Donc, quand j'ai passé le xpath sélecteur de

//td[contains(text(),'hello world']

l'analyseur a été tronquée à l'espace après le "bonjour" de sorte que le xpath sélecteur ressemblait

//td[contains(text(),'hello

clairement jeter une erreur. J'ai donc besoin d'ajuster mon analyse de lire correctement mon selector xpath.

Merci encore pour tous vos rapide, des réponses utiles!

  • nous montrer le contenu html s'il vous plaît..
  • Sélecteurs CSS ne pas avoir nommé comme contains ..
  • cssselect a un support pour :contains() pseudo-sélecteur, mais il se réfère à un début de CSS3 projet qui a été supprimé (pythonhosted.org/cssselect/#supported-selectors). Je ne suis pas au courant d'autres projets à l'appui de cette pseuso-sélecteur
  • c'est jQery un api.jquery.com/contains-selector . Le sélénium ne supporte pas que jQuery un..
  • le contains sélecteur jQuery a vient de Grésillement, pas jQuery.
  • La prochaine fois, s'il vous plaît montrer le code réel!
  • J'aurais aimé montrer le vrai code, mais les abstractions a obtenu de la manière trop. Il était environ 200 lignes de code qui ont été impliquées dans l'obtention de la chaîne à partir de la première page à l'endroit où le sélénium a été de l'utiliser. Il aurait eu l'air très encombré.
  • ensuite, vous devez faire une simple reproductible scénario. Comment en étions-nous de savoir qu'il était arriver tronquée? Vous n'avez pas à nous fournir la réelle XPath vous avez été en cours d'exécution.