Как прочитать экспортированный файл из Я.Метрики JSON

(Ответов: 2, Просмотров: 797)
  1. Гуру Аватар для Matsa
    • Регистрация: 11.02.2012
    • Сообщений: 1,344
    • Репутация: 558
    • Webmoney BL: ?
    Всем привет!
    Сегодня хотел экспортировать страницу половозрастной структуры, при нажатии по ссылке на экспорт метрика предложила на выбор два формата - csv и json

    c первым собственно всё понятно, хотелось бы разобраться со вторым,

    нажал на экспорт и получил такой вот код

    Развернуть текст

    {"date2":"20131004","data_gender":[{"denial":0.25,"visits_percent":0.858,"name":"мужской","id":"1","visit_time":118,"depth":1.9705},{"denial":0.2044,"visits_percent":0.142,"name":"женский","id":"2","visit_time":56,"depth":1.3733}],"min":{"denial":0.1948,"visits_percent":0.031,"visit_time":29,"depth":1.25},"max":{"denial":0.2593,"visits_percent":0.551,"visit_time":125,"depth":1.9699},"data":[{"denial":0.2292,"visits_percent":0.031,"name":"младше 18 лет","id":"17","visit_time":29,"depth":1.25},{"denial":0.2255,"visits_percent":0.32,"name":"18-24 лет","id":"18","visit_time":115,"depth":1.9361},{"denial":0.2593,"visits_percent":0.551,"name":"25-34 лет","id":"25","visit_time":125,"depth":1.9699},{"denial":0.1948,"visits_percent":0.049,"name":"35-44 лет","id":"35","visit_time":41,"depth":1.2987},{"denial":0.2208,"visits_percent":0.049,"name":"45 лет и старше","id":"45","visit_time":93,"depth":1.6234}],"rows":5,"date1":"20121004","id":"13698322","subset_share":0.734,"goals":[],"totals":{"denial":0.2425,"visit_time":113,"depth":1.887}}
    [свернуть]

    просьба подсказать что это за зверь и с чем его едят? какую инфу я увижу и как собственно её вообще прочитать?
    Читаю https://bankstoday.net/ и стал разбираться в экономике и финансах
    • 0
  2. Sunshine reggae Аватар для OKyJIucT
    • Регистрация: 02.09.2011
    • Сообщений: 3,240
    • Репутация: 1830
    • Webmoney BL: ?
    Matsa, можете все разложить как массив, вот таким кодом (PHP)

    Код:
    $str = json_decode('{"date2":"20131004","data_gender":[{"denial":0.25,"visits_percent":0.858,"name":"мужской","id":"1","visit_time":118,"depth":1.9705},{"denial":0.2044,"visits_percent":0.142,"name":"женский","id":"2","visit_time":56,"depth":1.3733}],"min":{"denial":0.1948,"visits_percent":0.031,"visit_time":29,"depth":1.25},"max":{"denial":0.2593,"visits_percent":0.551,"visit_time":125,"depth":1.9699},"data":[{"denial":0.2292,"visits_percent":0.031,"name":"младше 18 лет","id":"17","visit_time":29,"depth":1.25},{"denial":0.2255,"visits_percent":0.32,"name":"18-24 лет","id":"18","visit_time":115,"depth":1.9361},{"denial":0.2593,"visits_percent":0.551,"name":"25-34 лет","id":"25","visit_time":125,"depth":1.9699},{"denial":0.1948,"visits_percent":0.049,"name":"35-44 лет","id":"35","visit_time":41,"depth":1.2987},{"denial":0.2208,"visits_percent":0.049,"name":"45 лет и старше","id":"45","visit_time":93,"depth":1.6234}],"rows":5,"date1":"20121004","id":"13698322","subset_share":0.734,"goals":[],"totals":{"denial":0.2425,"visit_time":113,"depth":1.887}}');
    
    echo '<pre>';
    print_r($str);
    echo '</pre>';
    и получите примерно это:

    Развернуть текст



    Код:
    stdClass Object
    (
        [date2] => 20131004
        [data_gender] => Array
            (
                [0] => stdClass Object
                    (
                        [denial] => 0.25
                        [visits_percent] => 0.858
                        [name] => мужской
                        [id] => 1
                        [visit_time] => 118
                        [depth] => 1.9705
                    )
    
    
                [1] => stdClass Object
                    (
                        [denial] => 0.2044
                        [visits_percent] => 0.142
                        [name] => женский
                        [id] => 2
                        [visit_time] => 56
                        [depth] => 1.3733
                    )
    
    
            )
    
    
        [min] => stdClass Object
            (
                [denial] => 0.1948
                [visits_percent] => 0.031
                [visit_time] => 29
                [depth] => 1.25
            )
    
    
        [max] => stdClass Object
            (
                [denial] => 0.2593
                [visits_percent] => 0.551
                [visit_time] => 125
                [depth] => 1.9699
            )
    
    
        [data] => Array
            (
                [0] => stdClass Object
                    (
                        [denial] => 0.2292
                        [visits_percent] => 0.031
                        [name] => младше 18 лет
                        [id] => 17
                        [visit_time] => 29
                        [depth] => 1.25
                    )
    
    
                [1] => stdClass Object
                    (
                        [denial] => 0.2255
                        [visits_percent] => 0.32
                        [name] => 18-24 лет
                        [id] => 18
                        [visit_time] => 115
                        [depth] => 1.9361
                    )
    
    
                [2] => stdClass Object
                    (
                        [denial] => 0.2593
                        [visits_percent] => 0.551
                        [name] => 25-34 лет
                        [id] => 25
                        [visit_time] => 125
                        [depth] => 1.9699
                    )
    
    
                [3] => stdClass Object
                    (
                        [denial] => 0.1948
                        [visits_percent] => 0.049
                        [name] => 35-44 лет
                        [id] => 35
                        [visit_time] => 41
                        [depth] => 1.2987
                    )
    
    
                [4] => stdClass Object
                    (
                        [denial] => 0.2208
                        [visits_percent] => 0.049
                        [name] => 45 лет и старше
                        [id] => 45
                        [visit_time] => 93
                        [depth] => 1.6234
                    )
    
    
            )
    
    
        [rows] => 5
        [date1] => 20121004
        [id] => 13698322
        [subset_share] => 0.734
        [goals] => Array
            (
            )
    
    
        [totals] => stdClass Object
            (
                [denial] => 0.2425
                [visit_time] => 113
                [depth] => 1.887
            )
    
    
    )
    [свернуть]


    Обращаться к каждому элементу можно так

    Код:
    echo $str->date2;
    получите на выходе 20131004

    либо

    Код:
    echo $str->min->visits_percent;

    получите 0.031
    Последний раз редактировалось OKyJIucT; 04.10.2013 в 15:08.
    • 1

    Спасибо сказали:

    Matsa(04.10.2013),
  3. Студент
    • Регистрация: 17.08.2010
    • Сообщений: 74
    • Репутация: 12
    но не обязательно использовать серверный язык.
    JavaScript :: JSON.parse(text [, reviver])
    • 0

Похожие темы

Темы Раздел Ответов Последний пост
Опять мотивация! Но прочитать стоит.
Оффтоп и свободные темы 10 03.01.2013 15:50
поисковые роботы видят Json контент?
Общие вопросы поисковой оптимизации 6 25.04.2012 14:40
Тема получения ссылок - помогите прочитать :)
Вопросы от новичков 1 20.11.2011 01:15
Срочно требуется удаленно веб программист -PHP5, MySQL, Javascript, jQuery, JSON
Создание сайтов 3 18.10.2011 00:43
Советую прочитать!
Оффтоп и свободные темы 2 18.02.2011 17:56

У кого попросить инвайт?

Вы можете попросить инвайт у любого модератора:

Информеры