从Python span标记提取文本

从Python span标记提取文本,python,selenium,web-scraping,Python,Selenium,Web Scraping,我在做selenium机器人,我需要在机器人搜索后从页面中提取信息,但我遇到了麻烦 我有下图中的HTML 我想从这些斜体标记“class='escapamentolihas'”中提取文本 出口: 在:中,我应该得到“2007年4月30日-Vara das Execuçes Fiscais Estaduais”在图像中加下划线根据您提供的HTML图像,元素文本似乎在div元素中,而不是span。您需要从div而不是span提取文本。我将替换此块: textos = scraping.find(c

我在做selenium机器人,我需要在机器人搜索后从页面中提取信息,但我遇到了麻烦

我有下图中的HTML

我想从这些斜体标记“class='escapamentolihas'”中提取文本

出口:


中,我应该得到“2007年4月30日-Vara das Execuçes Fiscais Estaduais”在图像中加下划线

根据您提供的HTML图像,元素文本似乎在
div
元素中,而不是
span
。您需要从
div
而不是
span
提取文本。我将替换此块:

textos = scraping.find(class_ = 'espacamentoLinhas')
subtextos = scraping.find_all('span')
for ext in subtextos:
    print(ext.get_text())
为此:

elements = self.browser.find_elements_by_xpath("//div[@class='espacamentoLinhas']")
for element in elements:
    print(element.text)
span
仅包含文本“Recebido em:”,而不包含您正在查找的文本,即
2007年4月30日-Vara das Execuões Fiscais Estaduais
。该文本实际上包含在我包含的XPath中引用的
div

如果您不想使用
self.browser.find\u elements\u by\u xpath
,您可能只需要删除
scraping.find\u all('span')
部分代码:

 textos = scraping.find(class_ = 'espacamentoLinhas')
 for ext in textos:
     print(ext.get_text())

是否有方法get_text()?我认为您应该使用ext.text来检索span文本。上次的后续操作不起作用,他返回了我AttributeError:“Navigablesting”对象没有属性“get_text”我不完全确定scaping.find()的数据类型是什么。我期待一个WebElement,我假设它的数据类型与原始示例中的
subtexts
相同。
elements = self.browser.find_elements_by_xpath("//div[@class='espacamentoLinhas']")
for element in elements:
    print(element.text)
 textos = scraping.find(class_ = 'espacamentoLinhas')
 for ext in textos:
     print(ext.get_text())