给定一个Google工作表中的特定单元格,其中包含指向另一个Google工作表中另一个单元格的超链接-如何正确获取此链接以及如何获取链接单元格的值
到目前为止,我得到了这个:
table_entities = gc.values().get(spreadsheetId=excel_id, range='XYZ').execute()['values']
table_entities_synthesis = gc.get(spreadsheetId=excel_id, ranges='XYZ', fields="sheets/data/rowData/values/hyperlink").execute()
synthesis_rangeid_list = []
for hyperlink in table_entities_synthesis.get('sheets')[0].get('data')[0].get('rowData'):
if hyperlink.get('values', ''):
hyperlink = hyperlink.get('values')[1].get('hyperlink')
synthesis_rangeid_list.append(hyperlink)
request = gc.spreadsheets().values().get(spreadsheetId=ABC, range=hyperlink,
valueRenderOption=value_render_option, dateTimeRenderOption=date_time_render_option)
response = request.execute()
但是这种方法给了我一个像这样的范围id列表:“#rangeid=737563017”,我不知道如何使用它访问另一张表中的数据(当然它不应该是我上面所做的方式,因为gc.spreadsheets().values().get()方法在谈论单元格范围而不是id时接受类似于“B2”的内容)+另一个问题是,只有当我的第一张工作表的每一行都有一个到第二张工作表的超链接时,这个解决方案才会起作用(我想在最后将一个值连接到另一个值)-因此,如果一个原始值不包含它,那么我就失去了整个顺序,我有一个巨大的问题
理想的情况是获取循环中特定单元格的超链接,然后将其连接到另一个工作表中超链接单元格的值
我花了一整天的时间试图解决这一问题,因此对于任何与此问题斗争的人->;我将写下我所有的观察结果和最终的解决方案
要从单元格中获取
hyperlink
,您应该尝试以下操作:至于检索超链接中引用的单元格的范围,只需使用以下正则表达式:
注
为了使用正则表达式,您必须使用
import re
导入Python中的正则表达式模块。另外,请注意,您可能需要将代码调整到范围,因为这只针对一个单元格参考
Sheets API v4 Method: spreadsheets.get
Regular Expression To Extract Valid Cell References From A Spreadsheet Formula
Regular Expressions Module Python
相关问题 更多 >
编程相关推荐