Python Selenium—尝试在没有文本变量和随机类名的对象中获取文本
我正在尝试获取写在Discord网站上的最后一条消息,但这是HTML: 我不能只复制类名,因为它没有任何顺序(我不想得到那个特定的消息,类名会随着每个人的变化而变化) 我可以使用“role”通过xpath获取主元素,但我不知道如何获取其中的正确类或该类中的文本Python Selenium—尝试在没有文本变量和随机类名的对象中获取文本,python,selenium-webdriver,Python,Selenium Webdriver,我正在尝试获取写在Discord网站上的最后一条消息,但这是HTML: 我不能只复制类名,因为它没有任何顺序(我不想得到那个特定的消息,类名会随着每个人的变化而变化) 我可以使用“role”通过xpath获取主元素,但我不知道如何获取其中的正确类或该类中的文本 谢谢你的帮助 通过整合re模块,您绝对可以得到它。尝试以下方法: msgs\u list=find\u elements\u by\u class\u name(重新编译(r'message-.+')) 因此,它将查找包含消息-和至少一些
谢谢你的帮助 通过整合
re
模块,您绝对可以得到它。尝试以下方法:
msgs\u list=find\u elements\u by\u class\u name(重新编译(r'message-.+'))
因此,它将查找包含消息-
和至少一些随机id的类。您必须对其进行测试,可能需要清理一下
注意,您需要重新导入
driver.find_element_by_xpath(".//div[contains(@class,'contents')/h2/div").text
请尝试以下xpath:
//div[contains(@class,'messageContent')]
或
要查看文本输出,请将其指定给变量:
el_text= driver.find_element_by_xpath("//div[contains(@class,'messageContent') and contains(@class,'markup')]").text
print(el_text)
据我所知,这就是你想要的:
element = driver.find_element_by_css_selector(`div[role="listitem"]')
class_text = element.get_attribute('class')
将此html代码粘贴到问题中您的代码尝试在哪里?如果您的问题已解决,请投票/接受答案
class_text = element.get_attribute('class')