导入标题包含单词 "table" - Google 的表格
Import tables where the title contains the word "table" - Google Sheets
在该站点的页面上,这些表格在右侧出现 1 或 2 次,我想知道是否有任何方法可以告诉 IMPORTXML
或 IMPORTHTML
导入包含单词 "table"
的表格,例如:"xxxxxxxxxx table"
和 "yyyyyyyyyyy table"
.
因为页面上有几个表,如果向IMPORT
说明我要找哪些表,就不需要全部导入了。
示例页面:
https://int.soccerway.com/matches/2020/03/03/england/fa-cup/reading-fc/sheffield-united-fc/3221322/
Obs.: The pages changes the number of tables according to the existing
data, so I can't use something fixed like:
=IMPORTHTML("LINK","table",9)
=IMPORTHTML("LINK","table",10)
Sheet link:
https://docs.google.com/spreadsheets/d/1Dmql4y03xaJoh_wU01XoMM4b3ZSpF-biT7-qGXkyt7Y/edit?usp=sharing
我相信你的目标如下。
- 当HTML数据中存在“英冠table”和“英超table”时,您想使用
IMPORTXML
或IMPORTHTML
。
- 您想使用 Google 电子表格的内置公式来实现。
为此,这个答案怎么样?
在这个回答中,我想提出以下流程。
- 从 URL.
中检索“Championship table”和“Premier League table”的值
- 将检索到的值与
""
相结合,并将其与 Championship tablePremier League table
进行比较。
- 当“英冠table”和“英超table”存在时,返回
TRUE
。
- 根据HTML数据,我认为“英冠table”和“英超table”的顺序是不变的
示例公式如下。 URL 被放入单元格“A1”。
=IF(TEXTJOIN("",TRUE,IMPORTXML(A1,"//h2/a"))="Championship tablePremier League table",TRUE,FALSE)
- 在这种情况下,当“Championship table”和“Premier League table”存在时,返回
TRUE
。
示例公式:
当使用这个公式时,当“冠军table”和“英超联赛table”存在时,作为示例,您想使用IMPORTXML(A1,"//table/tr")
,它变成如下。
=IF(TEXTJOIN("",TRUE,IMPORTXML(A1,"//h2/a"))="Championship tablePremier League table",IMPORTXML(A1,"//table/tr"),"")
- URL 被放入单元格“A1”。
- 在这种情况下,当“Championship table”和“Premier League table”不存在时,不会显示任何值。
结果:
参考文献:
已添加:
对于您更新的问题,以下答案如何?
根据你的问题,我认为当 xxxxxxxxxx table
和 yyyyyyyyyyy table
存在时,2 个 table 存在。当我看到 HTML 数据时,当 xxxxxxxxxx table
和 yyyyyyyyyyy table
存在时,table 似乎有 leaguetable sortable table
作为 class价值是存在的。我认为这可能适用于您的情况。那么下面的示例公式怎么样?
示例公式:
=IF(AND(REGEXMATCH(INDEX(IMPORTXML(A1,"//h2/a"),1),"table"),REGEXMATCH(INDEX(IMPORTXML(A1,"//h2/a"),2),"table")),IMPORTXML(A1,"//table[contains(@class,'leaguetable sortable table')]//tr"),"")
结果:
注:
- 在这种情况下,
=IFERROR(IMPORTXML(A1,"//table[contains(@class,'leaguetable sortable table')]//tr"),"")
或许可以使用。关于这个,请在没有 xxxxxxxxxx table
和 yyyyyyyyyyy table
. 值的情况下进行测试
在该站点的页面上,这些表格在右侧出现 1 或 2 次,我想知道是否有任何方法可以告诉 IMPORTXML
或 IMPORTHTML
导入包含单词 "table"
的表格,例如:"xxxxxxxxxx table"
和 "yyyyyyyyyyy table"
.
因为页面上有几个表,如果向IMPORT
说明我要找哪些表,就不需要全部导入了。
示例页面:
https://int.soccerway.com/matches/2020/03/03/england/fa-cup/reading-fc/sheffield-united-fc/3221322/
Obs.: The pages changes the number of tables according to the existing data, so I can't use something fixed like:
=IMPORTHTML("LINK","table",9)
=IMPORTHTML("LINK","table",10)
Sheet link:
https://docs.google.com/spreadsheets/d/1Dmql4y03xaJoh_wU01XoMM4b3ZSpF-biT7-qGXkyt7Y/edit?usp=sharing
我相信你的目标如下。
- 当HTML数据中存在“英冠table”和“英超table”时,您想使用
IMPORTXML
或IMPORTHTML
。 - 您想使用 Google 电子表格的内置公式来实现。
为此,这个答案怎么样?
在这个回答中,我想提出以下流程。
- 从 URL. 中检索“Championship table”和“Premier League table”的值
- 将检索到的值与
""
相结合,并将其与Championship tablePremier League table
进行比较。- 当“英冠table”和“英超table”存在时,返回
TRUE
。 - 根据HTML数据,我认为“英冠table”和“英超table”的顺序是不变的
- 当“英冠table”和“英超table”存在时,返回
示例公式如下。 URL 被放入单元格“A1”。
=IF(TEXTJOIN("",TRUE,IMPORTXML(A1,"//h2/a"))="Championship tablePremier League table",TRUE,FALSE)
- 在这种情况下,当“Championship table”和“Premier League table”存在时,返回
TRUE
。
示例公式:
当使用这个公式时,当“冠军table”和“英超联赛table”存在时,作为示例,您想使用IMPORTXML(A1,"//table/tr")
,它变成如下。
=IF(TEXTJOIN("",TRUE,IMPORTXML(A1,"//h2/a"))="Championship tablePremier League table",IMPORTXML(A1,"//table/tr"),"")
- URL 被放入单元格“A1”。
- 在这种情况下,当“Championship table”和“Premier League table”不存在时,不会显示任何值。
结果:
参考文献:
已添加:
对于您更新的问题,以下答案如何?
根据你的问题,我认为当 xxxxxxxxxx table
和 yyyyyyyyyyy table
存在时,2 个 table 存在。当我看到 HTML 数据时,当 xxxxxxxxxx table
和 yyyyyyyyyyy table
存在时,table 似乎有 leaguetable sortable table
作为 class价值是存在的。我认为这可能适用于您的情况。那么下面的示例公式怎么样?
示例公式:
=IF(AND(REGEXMATCH(INDEX(IMPORTXML(A1,"//h2/a"),1),"table"),REGEXMATCH(INDEX(IMPORTXML(A1,"//h2/a"),2),"table")),IMPORTXML(A1,"//table[contains(@class,'leaguetable sortable table')]//tr"),"")
结果:
注:
- 在这种情况下,
=IFERROR(IMPORTXML(A1,"//table[contains(@class,'leaguetable sortable table')]//tr"),"")
或许可以使用。关于这个,请在没有xxxxxxxxxx table
和yyyyyyyyyyy table
. 值的情况下进行测试