我正在尝试以编程方式在页面上找到特定的数据源:
https://finance.yahoo.com/quote/3DP.AX/financials?p=3DP.AX
当我在页面上“查看页面源代码”时,我仅发现以下实例:
AuthService.cs
之后,将出现我需要的数据。所以在我的代码中,我有:
,"3DP.AX":
^^这会返回-1
我设法在UrlFetchApp的响应中找到所需的数据,并发现发生在以下情况:
UrlFetchApp.fetch("https://finance.yahoo.com/quote/3DP.AX/financials?p=3DP.AX").getContentText().indexOf(",\"3DP.AX\":")
但是,我在查看页面源中找不到此字符串。我清除了缓存,但这并没有改变页面源结果。
问题:“查看页面源”上的数据是否可能与UrlFetchApp返回的数据不同?
答案 0 :(得分:1)
UrlFetchApp.fetch接收到的内容和浏览器请求接收到的内容之间可能存在差异。但是,您没有足够的信息来根据当前代码得出该结论。
要访问Fetch请求的结果,您需要在结果上调用getContentText()
,当前您是在HTTPResponse对象而不是响应的文本主体上调用indexOf。
此外,您应该将正确的字符串文字传递给indexOf()
-indexOf(',"3DP.AX":')