2013-10-05 4 views
0

мне нужно, чтобы получить тело этой страницы в объект:Синтаксический Json из тела документа

http://sob.ca.flyerservices.com/cached_banner_pages/AJAXProxy.aspx?bname=SOB&AJAXCall=GetPublicationData.aspx?view=PRODUCT&queryid=fc02e54c-079a-4623-8187-8b15d08da139&publicationid=1a9b1abe-0534-436a-83ab-8062e4801630&type=CATEGORY&languageid=1&bannerid=0f69e65d-a96e-4871-8f86-a5fe7dde96c0&bannername=SOB&customername=SOB&publicationtype=1

До сих пор у меня есть (я пощажу вас мои 100 предыдущих попыток, это наиболее перспективным):

//getting body 
var json = document.body.innerHTML; 
json = json.replace(/(<([^>]+)>)/ig," "); //get rid of html tags 

выход в консоли выглядит нормально, но когда я пытаюсь Eval или parseJSON, он бросает неожиданный токен ошибку ... Любая идея, чтобы я начал?

Спасибо!

Редактировать: JSON может быть сложным для получения (см. Комментарии/ответы), так что это мой лучший курс действий? Моя идея:

split by ({"productid":) 
then split by (",") 

Я не могу использовать запятую в одиночку в качестве разделителя, в поле Описание содержит некоторые ...

+1

Возможно, ваш источник json имеет некоторые недопустимые символы. Вы можете проверить его здесь: http://jsonformatter.curiousconcept.com/ –

+0

Я просто пытался это сделать, он жалуется на строки, содержащие '' '' – Barmar

+0

yep, тоже пытался это сделать. После сортировки с заменой ('\\\' ',' \ ''), он жалуется еще на ... – xShirase

ответ

0

Даже если вы должны были удалить все символы, обижая по-прежнему не будет быть в состоянии разобрать его как недействительный. См. Эту строку

"description": " or 8" Lemon Meringue Pie, 
+0

yep ... так что регулярное выражение для замены \ d \ "с \ d \ '\'? И пальцы скрещены ^^ – xShirase

+0

Любая другая идея, как получить данные? В принципе, JSON или нет, мне нужен объект со всеми продуктами там. – xShirase

+0

Я предполагаю, что вы regexp не сработали. – Musa

Смежные вопросы