希望将红色区域中的值导出到google中,我无法正确地获得xpath。非常感谢
编辑:我试着用这个,S说那是空的。
"=IMPORTXML(A2,"//div[3]/div[2]/div[1]/div[1]/div[2]/table[1]/tbody[1]/tr[2]/td[1]","en_US")“
https://subredditstats.com/r/funny

发布于 2023-02-01 06:52:36
您的方法的问题是,您试图抓取的数据是动态加载的,这意味着当您试图抓取它时,它不在页面的源代码中。要抓取动态内容,可以使用Google脚本及其内置功能来抓取动态内容。
下面是一个如何做到这一点的例子:
1转到Google并创建一个新的工作表。
2转到Tools > Script编辑器。
3.在脚本编辑器中,复制并粘贴以下代码:
function myFunction() {
var sheet = SpreadsheetApp.getActiveSheet();
var html = UrlFetchApp.fetch("https://subredditstats.com/r/funny").getContentText();
var doc = Xml.parse(html, true);
var td = doc.getElementByXPath("//div[3]/div[2]/div[1]/div[1]/div[2]/table[1]/tbody[1]/tr[2]/td[1]");
sheet.getRange("A1").setValue(td.toString());
}4保存脚本并运行myFunction函数。
5回到工作表,检查单元格A1,以查看该值是否已导入。
注意:请记住,有些网站可能会阻止刮擦,所以这种方法可能不会在所有情况下都有效。
发布于 2022-11-25 07:11:26
检查这个:https://docs.google.com/spreadsheets/d/1tZh43QVxJdOqTLXfWLQg8Z93S5jFZU6sl5G-I3Q2rrM/edit#gid=0
(它使用IMPORTRFOMWEB,替代ImportXML)
https://sqa.stackexchange.com/questions/50772
复制相似问题