我有一个公式可以从goodreads.com获取书名:
=IMPORTXML("https://www.goodreads.com/book/show/" & gr_id; "//*[@id='bookTitle']")
其中gr_id
是包含书籍ID的列。例如,当gr_id=23848607
时,它是从URL https://www.goodreads.com/book/show/23848607获取的,结果是“ Warheart”。
该公式在一段时间前效果很好。我没有做任何更改,现在我发现它停止了某些书籍的工作(仍然为其他书籍工作)。现在,它代替书名,为N/A
提供了“导入内部错误”提示。无效的ID为:
48332548
35906922
如何使其适用于所有书籍?
关于“导入内部错误”问题,发布了许多问题。我尝试了一些解决方案,包括将公式复制到一张新纸上,但是没有用。
更新:我尝试了以下不同的XPath
公式,而不是"//*[@id='bookTitle']"
。
"//h1[@id='bookTitle']"
"//h1"
这些不同的XPath
公式与原始XPath
公式的工作原理相同。他们为原始ID所使用的ID正确地工作,并为N/A
产生了与原始ID相同的ID。
更新:我刚刚检查了一下,所有公式对于所有gr_ids均正常工作(自从它们失效后,我没有进行任何更改。)也许有人知道如何防止它们避免将来停止工作。
更新:我再次检查了一次。在所有gr_id中,只有一个现在显示N\A
:35906922
。我创建了example spreadsheet,因为我的工作电子表格包含太多无关的详细信息,但是该问题并未出现在示例电子表格中。我回到我的工作电子表格并重新加载它-该问题在我的工作电子表格中也消失了。然后,我在示例电子表格中添加了更多测试数据,以下新示例gr_ids显示了N\A
:
48213012
48213092
我尝试制作示例电子表格的副本,以查看它是否可以解决问题。复制示例电子表格中的行为与原始示例电子表格中的行为相同-仅上面指定的两个gr_id才存在问题。