0
votes

Texte python / sélénium dans td sans tension

Le code HTML est xxx

si j'utilise ce code xxx

Je vais obtenir tout texte: NoteCurrentValue forte Achetez 1.11

Mon objectif est d'obtenir uniquement le 1.11 sans le texte dans la balise de l'espace.

S'il vous plaît, aidez-moi.


0 commentaires

3 Réponses :


0
votes

Pour obtenir la valeur 1.11 code> Utiliser JavaScripts Executor CODE> et obtenir lastchild strand> de l'élément td code>.

induire webdiverwait () code> et visibilité_of_element_located () code> p> xxx pré>

Vous devez ajouter des bibliothèques suivantes. P >

print(driver.execute_script('return arguments[0].lastChild.textContent;', driver.find_element_by_xpath('//*[@id="fs_title_values"]/div[3]/table/tbody/tr[1]/td[5]')))


2 commentaires

Merci pour votre réponse rapide. Mais ajouter 3 bibliothèques pour cette tâche simple est très lourde. Y a-t-il une méthode plus simple.


@DuardBauer: C'est la meilleure pratique pour inclure une attente pour éviter tout problème de synchronisation de page dans selenium.Si vous ne voulez pas utiliser cela juste, essayez simplement d'être mis à jour.



0
votes

Vous pouvez supprimer le texte du nœud enfant du texte intégral pour obtenir le texte du noeud parent.

cccss ='//*[@id="fs_title_values"]/div[3]/table/tbody/tr[1]/td[5]'


full_text = driver.find_element_by_xpath(cccss).text

child_text = driver.find_element_by_xpath(cccss + “//span”).text

parent_text = full_text.replace(child_text, '')
print(parent_text)


2 commentaires

Merci. C'est ça. Mais il faut appeler parent_text = Full_Text.replace (enfant_text, '')


@Eduardbauer meta.stackexchange.com/ Questions / 5234 / ...



0
votes

L'extrait du texte 1.11 fort> de l'élément, vous pouvez utiliser les : xxx pré>


Idéalement, vous devez induire webDriverwait em> pour le visibilité_of_element_located () code> et vous pouvez utiliser ce qui suit xpath em> basé stratégies de localisateur : p> xxx pré>

note strong>: Vous devez ajouter les importations suivantes: p>

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC


0 commentaires