EBAG
EBAG

Reputation: 22611

Python parse comma seperated nested brackets using Pyparsing

I want to parse a comma separated nested brackets into nested list:

from pyparsing import nestedExpr
str = r'[["http://google.com","Jose Rivas","http://google.com","some_guid"],"a year ago",null,null,4,null,"1003136023",["https://www.yahoo.com","Do it",null,"0ahU_pv"],null,null,"ChZDSUhNMG","0ahUKEwjBr"]'

z = nestedExpr('[', ']').parseString(str).asList()

this is what i get:

enter image description here

why do i get ',' (a single comma) as list item or ,null,null,null, for example? How to fix it?

Upvotes: 0

Views: 225

Answers (1)

dukkee
dukkee

Reputation: 1122

It's a usual JSON, try to parse it with json package:

import json

raw = r'[["http://google.com","Jose Rivas","http://google.com","some_guid"],"a year ago",null,null,4,null,"1003136023",["https://www.yahoo.com","Do it",null,"0ahU_pv"],null,null,"ChZDSUhNMG","0ahUKEwjBr"]'
data = json.loads(raw)

print(data)

Upvotes: 1

Related Questions