我正试图从this网页上抓取全部评论。 (完整评论 - 点击'阅读更多'按钮后)。我正在使用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']")
显示空白列表元素。我不知道出了什么问题。请帮帮我..
答案 0 :(得分:0)
删除双斜杠并尝试使用显式class Job(models.Model):
customer = models.ForeignKey(User, related_name='customer')
translator = models.ForeignKey(User, related_name='freelancer',null=True)
description = models.TextField()
language_tuple = models.ForeignKey(LanguageTuple,related_name='language_tuple')
created = models.DateTimeField(auto_now_add=True)
modified = models.DateTimeField(auto_now=True)
is_active = models.BooleanField(default=False)
has_translator = # If translator is not None/Null, then True else False
轴:
descendant
(参见我在this answer中提到的关于XPath的W3C文档的说明)
答案 1 :(得分:0)
在处理列表时,您应首先找到列表项,例如使用CSS选择器
div.srm
根据这些元素,您可以在列表项内搜索,例如使用CSS选择器
p[itemprop='reviewBody']
当然你也可以用一个单独的表达方式来做,但这不是那么整洁的imho:
div.srm p[itemprop='reviewBody']
或者在XPath中(我不推荐):
//div[@class='srm']//p[@itemprop='reviewBody']
如果这些都不适合你,那么问题必定在其他地方。