我需要导入此隐藏的运费“#34;滚动到视图"通过IMPORTXML进入Google表格。
我可以在HTML中找到= IMPORTXML中的Xpath到Sheets中,但它是空的。
显然,表格无法导入视图中的项目,因此我需要一种单击窗口打开的方法,以便IMPORTXML正常工作。某种类型的脚本可能吗?
我试图彻底搜索过去的问题并尝试包含更多照片,但我没有足够的声誉。
答案 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="®EXEXTRACT(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="®EXEXTRACT(A1,"\d+")&"&num=1&country=41"))
如果你想在一个单元格中加载所有文本,你可以将它包装在这样的连接中:
=CONCATENATE(IMPORTDATA(REGEXREPLACE(SUBSTITUTE(A1,"?","&"),"(http://www.gearbest.com/)(.*)(/.*.html)","$1shipping$3?act=get_shipping_info&id="®EXEXTRACT(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="®EXEXTRACT(A1,"\d+")&"&num=1&country=41"))),"ship_price:""(.*)""ship.*")