如何在google工作表中使用importxml导入隐藏的项目,方法是滚动到视图

时间:2016-05-21 21:01:40

标签: xml xpath google-sheets

我需要导入此隐藏的运费“#34;滚动到视图"通过IMPORTXML进入Google表格。

Photo one

我可以在HTML中找到= IMPORTXML中的Xpath到Sheets中,但它是空的。

Photo two

显然,表格无法导入视图中的项目,因此我需要一种单击窗口打开的方法,以便IMPORTXML正常工作。某种类型的脚本可能吗?

我试图彻底搜索过去的问题并尝试包含更多照片,但我没有足够的声誉。

1 个答案:

答案 0 :(得分:1)

因此,获取装运项目数据的一种方法是从项目网址中获取元素,以便您可以检索装运项目数据:

假设您在A1中有以下网址:http://www.gearbest.com/multi-rotor-parts/pp_197627.html?wid=2

发货网址看起来非常相似,只有几点不同:http://www.gearbest.com/shipping/pp_197627.html?act=get_shipping_info&id=197627&num=1&country=41&wid=2

使用regexreplace使用原始网址中的商品ID,并换出网页参数以显示送货方式如下:

=REGEXREPLACE(SUBSTITUTE(A1,"?","&"),"(http://www.gearbest.com/)(.*)(/.*.html)","$1shipping$3?act=get_shipping_info&id="&REGEXEXTRACT(A1,"\d+")&"&num=1&country=41")

在完整的regexreplace之前,我将原始网址中的任何问号替换为&,以防万一以便正确加载您想要的数据。然后围绕我基本上将multi-rotor-parts交换为shipping,然后在act=get_shipping_info&id=上添加另一个正则表达式,该正则表达式从原始网址获取id#,在这种情况下它是197627并且然后将&num=1&country=41添加到最后 - 请注意,您还可以更改num参数,以表示您希望最终价格的商品数量。

如果您要加载此网址,您将看到包含所有运费变化的原始json数据

从那里你可以使用importdata将其拉入,如果你想将字段分开,你可以单独使用importdata:

=IMPORTDATA(REGEXREPLACE(SUBSTITUTE(A1,"?","&"),"(http://www.gearbest.com/)(.*)(/.*.html)","$1shipping$3?act=get_shipping_info&id="&REGEXEXTRACT(A1,"\d+")&"&num=1&country=41"))

如果你想在一个单元格中加载所有文本,你可以将它包装在这样的连接中:

=CONCATENATE(IMPORTDATA(REGEXREPLACE(SUBSTITUTE(A1,"?","&"),"(http://www.gearbest.com/)(.*)(/.*.html)","$1shipping$3?act=get_shipping_info&id="&REGEXEXTRACT(A1,"\d+")&"&num=1&country=41")))

最后:如果您最终只需要价格而不是任何其他数据将其全部包装在regexextract函数中:

=REGEXEXTRACT(CONCATENATE(IMPORTDATA(REGEXREPLACE(SUBSTITUTE(A1,"?","&"),"(http://www.gearbest.com/)(.*)(/.*.html)","$1shipping$3?act=get_shipping_info&id="&REGEXEXTRACT(A1,"\d+")&"&num=1&country=41"))),"ship_price:""(.*)""ship.*")

enter image description here