如何使用Selenium库单击文本下方的按钮。用Python

2024-09-29 16:26:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我想建立一个机器人,喜欢在网页上的评论。评论下面有一个喜欢和不喜欢按钮

注释的xPath://*[@id="commentText-40538697"]/span

类似按钮的xPath:

//*[@id="commentText-40538697"]/div[2]/div[1]/label[1]

如您所见,如果我获得注释id(在上面的示例中,它是40538697),我可以轻松地单击按钮。按钮每个注释的id都在更改。所以我用下面的代码得到元素

xpath=driver.find_element_by_xpath("//*[contains(text(), 'COMMENT')]")

--也是所取元素的属性

xpath.get\u属性 Out[113]:>

有没有办法获取网页中特定文本的div id


Tags: 代码divid元素网页示例属性评论
1条回答
网友
1楼 · 发布于 2024-09-29 16:26:57

您可以尝试在xpath下面根据关键字提取注释。您还可以使用以下同级来检查是否存在show more并单击它

YourText="Fikrini empoze"

//div[@class='js-comments-wrapper commentsWrapper']//div[@class="comment js-comment"]//div[@class="js-text-wrapper commentText"][contains(.,'"+YourText+"')]

显示更多文本

//div[@class='js-comments-wrapper commentsWrapper']//div[@class="comment js-comment"]//div[@class="js-text-wrapper commentText"][contains(.,'Fikrini empoze')]//following-sibling::span[@class='showMoreText']

喜欢按钮:

//div[@class='js-comments-wrapper commentsWrapper']//div[@class="comment js-comment"]//div[@class="js-text-wrapper commentText"][contains(.,' Fikrini empoze')]//following-sibling::label[@class='like']

不喜欢

//div[@class='js-comments-wrapper commentsWrapper']//div[@class="comment js-comment"]//div[@class="js-text-wrapper commentText"][contains(.,' Fikrini empoze')]//following-sibling::label[@class='dislike']

相关问题 更多 >

    热门问题