我定义了一个规则,要采集一条微博下的所有评论的回复,如果回复很多,一开始是收缩的,我用连续点击动作点开全部回复。点击动作也都点开了,也能连续点击下去,但是,我定义的交互位置值xpath没有定位到内容。这是怎么回事?



举报 使用道具
| 回复

共 1 个关于本帖的回复 最后回复于 2021-3-25 11:30

沙发
Fuller 管理员 发表于 2021-3-25 11:30:01 | 只看该作者
如果填写了交互对象值,那么这个xpath应该是一个相对的xpath,就是相对于点击位置的xpath。比如,你要采集新浪微博的评论的回复,那么点击位置是节点“共xxx条回复”,这个节点就是交互对象,在你的截图中,交互对象值可以输入这样的xpath:
  1. .
复制代码
就一个点,表示就是要这个被点击节点的值。也可能是这样的xpath
  1. ../following-sibling::div[1]
复制代码
表示先找到这个点击点的父节点(..就是父节点),然后找到父节点的下一个div类型的兄弟节点,而且只要第一个div类型的兄弟节点。从这个节点上提取内容。

但是,新浪微博的网页是动态的,当你点击“共XXX条回复”这个节点后,这个节点就消失了,被一个展开的回复列表替换了。所以,也就无法相对这个节点提取交互对象值了



举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • Gephi社会网络分析-马蜂窝游记文本分词并同
  • Gephi社会网络分析-基于马蜂窝游记文本以词
  • 知乎话题文本根据词语间距筛选后生成共词矩
  • 马蜂窝游记文本分词后以词语间距为筛选条件
  • 学习使用apriori算法挖掘关联关系

热门用户

GMT+8, 2024-4-27 08:22