猿问

我如何使用 Selenium lib 单击文本下方的按钮。

我想构建一个喜欢网页中评论的机器人。评论下方有一个喜欢和不喜欢的按钮。

评论的xPath://*[@id="commentText-40538697"]/span

点赞按钮的xPath:

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

如您所见,如果我获得评论 ID(在上面的示例中为 40538697),我可以轻松单击该按钮。每个评论的按钮 ID 都会发生变化。所以我使用下面的代码获取元素

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

-- 也是所采用元素的属性。

xpath.get_property 输出[113]:>

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


哆啦的时光机
浏览 84回答 1
1回答

富国沪深

您可以尝试下面的 xpath 根据关键字提取评论。您也可以使用以下兄弟检查是否存在显示更多并单击它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']
随时随地看视频慕课网APP

相关分类

Html5
我要回答