JSON.parse将追加到字符串,然后在',

时间:2019-02-07 04:08:21

标签: ruby-on-rails

我正在用nokogiri解析一个网页,然后遍历CSS选择器,直到找到所需的内容。然后我运行一个正则表达式以仅匹配javascript部分,然后尝试使用JSON.parse对其进行解析在',{...处返回错误无效令牌,如果在匹配的数据上运行put,则显示时没有前置逗号,但是在运行JSON时发生错误。parseJSON :: ParserError:822:',{“处出现意外令牌skuAttr“:” 200007763:201336106; 491:200004763#145cm“,” skuPropIds“:”

file=File.open('product.html')
doc=Nokogiri::HTML.parse(file)
doc.css("script").each do |page|
if page.text=~/skuProducts/
    skudata = page.text[/var skuProducts=\[(.+?)\];/, 1]
    puts skudata
            parsed = JSON.load(skudata)
end 
end

1 个答案:

答案 0 :(得分:0)

如果您始终看到该逗号为前缀,而JSON字符串的其余部分看起来有效...那么为什么不删除该前导逗号然后尝试JSON解析呢?