今天,当尝试在Google表格中使用importXML时,我遇到了一个问题。我试图将USTA锦标赛页面的标题导入到Google表格中,但是,这不起作用,因为它只是导致显示网页的HTML标题(“ TournamentHome”)。以下是Google表格以及使用的网站:
Google表格和功能:
=importXML(F2, "//html//body[@id='thebody']//div[@id='content']//div[@id='pagetitle']")
网站和正在使用的源代码部分
我要从网站中提取的标题是
答案 0 :(得分:1)
=REGEXEXTRACT(QUERY(ARRAY_CONSTRAIN(IMPORTDATA(
"https://m.tennislink.usta.com/tournamenthome?T=225779"), 555, 1),
"where Col1 contains 'escape'"), "\(""(.*)""\)")
不幸的是,这是您无法尝试的方式,因为您尝试抓取的字段是由JavaScript控制的,而Google表格无法理解/导入JS。您可以通过禁用给定链接的JS进行测试,然后将看到可以完全导入到Google表格中的内容:
答案 1 :(得分:1)
该示例公式如何?在此公式中,在将标题值放入#pagetitle
之前直接从脚本中检索标题值。请认为这只是几个答案之一。
=REGEXEXTRACT(IMPORTXML(A1,"//div[@class='tournament_search']/script"),"escape\(""([\w\s\S]+)""")
将https://m.tennislink.usta.com/TournamentHome/tournament.aspx?T=38079
和https://m.tennislink.usta.com/tournamenthome?T=225779
放入“ A1”和“ A2”时,结果如下。