繁体   English   中英

谷歌应用脚​​本正则表达式返回空值(数据抓取)(谷歌表)

[英]Google Apps Script regex returning null (data scraping) (google sheets)

目标:目标是从该网站获取先令 PE 并将其放入每 24 小时更新一次的谷歌表中。

网站: https : //www.gurufocus.com/sector_shiller_pe.php

网站上带有需要刮取的“shiller pe”值的表格

需要将实时值放入此 Google 表格中

尝试的解决方案:

  1. =IMPORTXML("URL","XPATH")

试过在电子表格中使用这个功能,只是因为网站速度太慢,无法抓取网站

  1. Google Apps 脚本

制作此脚本以获取数据的 HTML 并返回能源部门的席勒值:

function energyFinder() {
  var url = "https://www.gurufocus.com/sector_shiller_pe.php";
  const html = UrlFetchApp.fetch(url).getContentText();
  var regex = new RegExp(/\/mq5xwwf">26<\/a><\/b><\/u><\/td><td class="text_center">([0-9][0-9].[0-9][0-9])<\/td>/);
  var e = regex.exec(html);
  return e
Logger.log(e)

}

但这只是返回null。 任何解决方案都会有所帮助,谢谢!

ps是网站的新手,所以我还没有嵌入图片,很抱歉

您可能对正则表达式本身有问题,因为26之前没有引号。

这应该有效:

\/mq5xwwf?>26<\/a><\/b><\/u><\/td><td class='text_center'>([0-9][0-9]\.[0-9][0-9])<\/td>

在此处输入图片说明

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2025 STACKOOM.COM