是否可以使用Selenium拍摄WebElement的部分屏幕截图



我正在编写一个脚本,该脚本将采用网站的src,并对网站的相关部分进行截图。更具体地说,我有兴趣从一个网站上截图帖子,包括他们各自的评论和回复。

目前,我可以根据需要生成所有这些屏幕截图,但当给定帖子的内容超过Selenium浏览器窗口的长度时,我会遇到问题。下面是一个示例HTML片段:

<div class="detail word-break">
<p id="contentArea">
Sample text content here. As you can see, the text is inside a p tag
<br>
<br>
...
My issue can be boiled down to wanting to treat each of these text elements as a separate WebElement for the purpose of taking Selenium screenshots
<br>
<br>
Using the XPath selector for "./child::*" on the contentArea element only returns a list of br tags, with no text content inside
...
</p>
</div>

是否可以将WebElement作为contentArea,并将其细分为包含无标签文本的较小WebElement,以便对其进行单独的屏幕截图?

我最终找到了解决问题的方法。我没有把帖子分成单独的元素,而是能够解析出文本,并把每个段落(即子元素(分成一个列表。然后,使用JS执行器,我可以用每一段的文本替换整个帖子的文本,并以这种方式进行截图。

希望任何面临类似问题的人都会发现这种解决方法很有用!

最新更新