2017-07-04 88 views
0

我需要使用python获取productSkus[的数据,但我不知道如何访问它。 javascript来自http://www.ulta.com/lid-lingerie-eye-tint?productId=xlsImpprod15361061。 这是它的样子。如何通过python检索javascript var的值?

<script type="text/javascript"> 
    var currentSkuId = '2502111'; 
    var currentProductId = 'xlsImpprod15361061'; 

    var productSkus = new Object(); 

       productSkus[2502111] = 
       {"displayName":"Fame &amp; Fortune","id":"2502111","imgUrl":"http://images.ulta.com/is/image/Ulta/2502111?$detail$","largeImgUrl":"http://images.ulta.com/is/image/Ulta/2502111?$lg$","swatchImgUrl":"http://images.ulta.com/is/image/Ulta/2502111sw?$50px$","swatchHoverImgUrl":"http://images.ulta.com/is/image/Ulta/2502111sm?$md$","skuSize":"0.13","skuSizeUOM":"oz"};........ 

任何人都可以帮助我吗?

+1

Python在服务器上运行,Javascript运行在客户端上。您需要使用AJAX将JS变量发送到服务器。 – Barmar

+0

您的问题甚至没有明确说明Javascript代码片段的来源以及您想要如何处理它。这是你的Python应用程序还是来自你试图解析的第三方源的页面。 –

+0

刚刚编辑我的问题。 –

回答

0

使用HTML表单数据提交给服务器,或通过API

0

如果你想在服务器端使用productSkus,那么你需要使用AJAX的JS变量发送到服务器。

由于Django模板是编译服务器端的。然后发送到浏览器执行JavaScript的客户端。在客户端浏览器上执行的JavaScript所做的任何更改都不会影响模板。这一点已经太迟了。

但是,JavaScript可以做类似于从服务器发出另一个请求以获取更多信息。或者,您可以在将其发送到客户端之前预先计算服务器上的值。

你当然可以使用Django模板来设置JavaScript变量。

<script> 
    var myVar = '{{ py_var }}'; 
</script>