首页 > 解决方案 > Parsehub 网站元素仅在特定日期显示

问题描述

我正在使用 Parsehub 将网站上某些页面的某些数据抓取到谷歌电子表格中。

我遇到的问题是某个 html 元素仅在某个日期显示,我想知道是否有办法设置它,以便 Parsehub 检查该元素,并在它最终显示它时将其刮入谷歌表格。

我想要获得的元素是每支球队的 Sportsbet 赔率或 class="match-odd__text match-odd__text--home"

这是两页,一页显示,一页不显示:

如果有人可以提供帮助,我将不胜感激。

标签: jsonparsehub

解决方案


要访问赔率和昵称,您必须解析网页中包含的 json。假设 url 在 A1 中,您可以通过以下方式检索信息

=whoAndOdds(importxml(A1,"//div[@id='vue-match-centre']//@q-data"))

使用此自定义功能

function whoAndOdds(url){
  var data = JSON.parse(url.replace(/\n/g,''))
  return [[data.match.homeTeam.nickName,data.match.homeTeam.odds],[data.match.awayTeam.nickName,data.match.awayTeam.odds]]
}

如果赔率值不存在,则单元格将保持空白,直到激活新的 importxml(您可以添加复选框来进行激活)


推荐阅读