求:关于爬取每次刷新页面后元素结构和对应class名都不相同的解决方法?

各位好,我使用 python 的 selenium 去爬取某网页的 一些 a 标签,但有个问题,每次刷新后这个 a 标签所在的位置都会发生变化,比如第一次进入他的位置是:

[@id="layoutPage"]/div[1]/div[2]/div[11]/div[2]/div[3]/div[2]/div/div[1]/div[1]/a

第二次刷新进入他就成了

[@id="layoutPage"]/div[1]/div[2]/div[11]/div[2]/div[4]/div[2]/div/div[1]/div[1]/a

再下一次可能变成了

[@id="layoutPage"]/div[1]/div[2]/div[11]/div[2]/div[1]/div[2]/div/div[1]/div[1]/a

所以通过 xpath 获取路径的方式无法成功了。于是我想使用 a 标签上的 class 去获取,但每次的 class 名称也会不同。所以求助这样的 a 该怎么取呢?
这个 a 是每一页的跳转按钮。

阅读 2.5k
1 个回答

class 名称都不同就有点诡异了吧,是有字体反扒什么的吗?给个页面看看

看上去就这一级别不一样。有可能是推荐算法啥的有关,也有可能和执行顺序有关。所以最好可以找找其他特征。

如果所有特征都没有,那么只能全采集,然后去过滤了

image.png

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题