1

我有一个html代码,我必须从中提取文本。如果它在href标签中,我可以使用get_attribute(“text”),但是在这个奇怪的代码中,没有标签。如何从没有特定标签的标签中提取文本?

<h2 class="slideable title"> 
<span content-slot="title" transcluded="49763">Black Diamond Cheese Bars 400-450 g</span> 
</h2> 

我想有黑钻奶酪棒400-450 g^

我试图让与名称内容插槽元素,但我无法做到这一点。

+0

你尝试过使用'soup.span.text'吗? – Mahesh

+0

感谢您的回复@Mahesh,我使用硒元素代替BS –

+0

它不清楚问题是什么。你不能找到元素?你不能提取文本?别的东西? – Guy

回答

0

使用父类选择,然后使用访问子。使用BeautifulSoup

html.find('div',{'class':'slideable title'}).span.get_text() 
+0

感谢评论@ ashishkumar148,我使用硒查找元素而不是BS –

+0

您已添加bs标记,所以我想你使用它 – ashishkumar148

0

使用getText()方法(点)运算符来达致这,getAttribute()返回属性值

试试这个

WebElement ele= driver.findElement(By.xpath("//span[@transcluded='49763']")); 
String s=ele.getText(); 
System.out.println(s);  

输出:

黑钻石芝士吧400-450克

+0

使用getext()方法,它的工作原理 – iamsankalp89

+0

感谢sankalp的回复,是的,我可以做到这一点,但在我的情况下,我有很多带有不同id的跨过名字。我无法使用它来获取所有内容 –

+0

在这种情况下,请使用该元素的xpath或使用该ID来定位跨度,或使用if-else来检查它。很高兴帮助你请点击右边接受答案 – iamsankalp89