2

我正在尝试从网页上获取完整的评论。(完整评论 - 单击“阅读更多”按钮后)。我正在使用 RSelenium 进行此操作。我可以<p>使用代码从第一个元素中选择和提取文本

reviewNodes <- mybrowser$findElements(using = 'xpath', "//p[@id][1]")

这是为了减少文本审查。

但无法使用代码提取全文评论

reviewNodes <- mybrowser$findElements(using = 'xpath', "//p[@id][2]")

或者

reviewNodes <- mybrowser$findElements(using = 'xpath', "//p[@itemprop = 'reviewBody']")

它显示空白列表元素。我不知道出了什么问题。请帮我..

4

2 回答 2

0

在处理列表时,您应该首先找到列表项,例如使用 CSS 选择器

div.srm

基于这些元素,您可以在列表项内部进行搜索,例如使用 CSS 选择器

p[itemprop='reviewBody']

当然,您也可以用 1 个表达式来完成,但这并不像恕我直言:

div.srm p[itemprop='reviewBody']

或者在 XPath 中(我不推荐):

//div[@class='srm']//p[@itemprop='reviewBody']

如果这些都不适合您,那么问题一定出在其他地方。

于 2016-04-01T12:12:07.440 回答
0

删除双斜线并尝试使用显式descendant轴:

/descendant::p[@id][2]

(请参阅我在此答案中提到的关于 XPath 的 W3C 文档的注释)

于 2016-04-01T09:44:34.577 回答