举个栗子,也是在下爬新浪微博移动端时遇到的问题,微博评论有普通评论、回复他人评论和热门评论,详情:
普通评论
回复他人评论
热门评论
用户评论内容都在<span class="ctt"></span>中,其中,普通评论和热门评论内容都很容易提取,采用.xpath['span[@class='ctt']/text()']即可
但回复他人评论的内容被分割成三个部分,要全部获取代码如下
1 test= comment.xpath(".//span[@class='ctt']") 2 result = test[0].xpath('string(.)').strip()
就可提取出:“回复@仙儿哥哥:您好,小v私信您了解下,请您查看下消息”
注:".//span[@class='ctt']"中的“.”表示选取当前节点,必须有!参考的下文链接中没有“.”,经试验只能爬取到子标签下的全部文本,有需要提取子标签下全部文本的可自行去掉“.”
参考:https://blog.csdn.net/qq_39429962/article/details/84196938