【发布时间】:2019-05-09 08:20:07
【问题描述】:
发布 #52365
在获取文本之前,我需要点击“展开更多”,如何获取其中的文本?有没有办法在运行蜘蛛脚本时触发展开更多以显示整体?
到目前为止我尝试过的是这个
info.xpath(".//div[@class= 'messageContent']").extract_first().replace('\n', '')
但我仍然无法获得全文
【问题讨论】:
-
此文本为您隐藏,但所有文本都在此标记中(它不是由 javascript 更新的),因此scrapy 无需单击“展开更多”即可获取所有文本。
-
Post #52365是第 5 个帖子,因此您必须使用[4]才能获得它 -xpath(".//div[@class='messageContent']")[4].extract() -
@furas 不是这样。 XPath 索引是基于 1 的(我知道……)。
-
@Gallaecio - 也许 xpath 索引是 1-bases 但我不在 xpath 中使用
[4]。我从 python 的列表中得到[4],从 0 开始计数。我还在scrapy shell中对其进行了测试,它似乎给出了预期的文本。 -
你是对的,对不起!
标签: python web-scraping scrapy