Импортировать объект Java Script, используя VBA

0

Я пытаюсь очистить вывод из команды JavaScript с помощью VBA.

К сожалению, я немного потерял, как. Я попробовал .getElementsByTagName("script")(4).innertext, но все, что я .getElementsByTagName("script")(4).innertext, - [object]

См. HTML ниже. Я пытаюсь извлечь из массива данных. Любая помощь будет оценена

ура

    <script type="text/javascript">
      var _chartit_hco_array = [
    {
        "series": [
            {
                "stacking": false,
                "data": [
                    4006,
                    34940.1034,
                    61062.5161,
                    95107.6333,
                    167971.8,
                    218549.129,
                    272389.2143,
                    288584.7097,
                    317959.5
                ],
                "type": "column",
                "name": "Dau"
            }
        ],
        "yAxis": [
            {
                "title": {
                    "text": "Daily Active Users (DAU)"
                }
            }
        ],
        "chart": {
            "renderTo": "dauchart_container"
        },
        "xAxis": [
            {
                "categories": [
                    "May<br>2013",
                    "Jun<br>2013",
                    "Jul<br>2013",
                    "Aug<br>2013",
                    "Sep<br>2013",
                    "Oct<br>2013",
                    "Nov<br>2013",
                    "Dec<br>2013",
                    "Jan<br>2014"
                ],
                "title": {
                    "text": "Date"
                }
            }
        ],
        "title": {
            "text": "Daily Active Users (Monthly avg.)"
        }
    },
    {
        "series": [
            {
                "stacking": false,
                "data": [
                    12456.96,
                    204106.3103,
                    320728.5161,
                    442251.9333,
                    646994.0333,
                    1017031.3226,
                    1232705.2857,
                    1377097.3871,
                    1432762.5
                ],
                "type": "column",
                "name": "Mau",
                "label": {
                    "text": "Light breeze",
                    "style": {
                        "color": "#606060"
                    }
                }
            }
        ],
        "yAxis": [
            {
                "title": {
                    "text": "Monthly Active Users (MAU)"
                }
            }
        ],
        "chart": {
            "renderTo": "mauchart_container"
        },
        "xAxis": [
            {
                "categories": [
                    "May<br>2013",
                    "Jun<br>2013",
                    "Jul<br>2013",
                    "Aug<br>2013",
                    "Sep<br>2013",
                    "Oct<br>2013",
                    "Nov<br>2013",
                    "Dec<br>2013",
                    "Jan<br>2014"
                ],
                "title": {
                    "text": "Date"
                }
            }
        ],
        "title": {
            "text": "Monthly Active Users (Monthly avg.)"
        }
    },
    {
        "series": [
            {
                "stacking": false,
                "data": [
                    36.904,
                    18.963103,
                    18.939677,
                    21.466333,
                    25.936,
                    21.515806,
                    22.113929,
                    20.959032,
                    22.19
                ],
                "type": "column",
                "name": "Dau2Mau Percent"
            }
        ],
        "yAxis": [
            {
                "title": {
                    "text": "Daily / Monthly Active Users (DAU/MAU)"
                }
            }
        ],
        "chart": {
            "renderTo": "dau2mauchart_container"
        },
        "xAxis": [
            {
                "categories": [
                    "May<br>2013",
                    "Jun<br>2013",
                    "Jul<br>2013",
                    "Aug<br>2013",
                    "Sep<br>2013",
                    "Oct<br>2013",
                    "Nov<br>2013",
                    "Dec<br>2013",
                    "Jan<br>2014"
                ],
                "title": {
                    "text": "Date"
                }
            }
        ],
        "title": {
            "text": "DAU as percentage of MAU (Monthly avg.)"
        }
    },
    {
        "series": [
            {
                "stacking": false,
                "data": [
                    11057.24,
                    104310.5862,
                    153653.3226,
                    222996.8667,
                    392113.7,
                    546472.0645,
                    674174.0714,
                    710372.6774,
                    771079.5
                ],
                "type": "column",
                "name": "Wau"
            }
        ],
        "yAxis": [
            {
                "title": {
                    "text": "Weekly Active Users (WAU)"
                }
            }
        ],
        "chart": {
            "renderTo": "wauchart_container"
        },
        "xAxis": [
            {
                "categories": [
                    "May<br>2013",
                    "Jun<br>2013",
                    "Jul<br>2013",
                    "Aug<br>2013",
                    "Sep<br>2013",
                    "Oct<br>2013",
                    "Nov<br>2013",
                    "Dec<br>2013",
                    "Jan<br>2014"
                ],
                "title": {
                    "text": "Date"
                }
            }
        ],
        "title": {
            "text": "Weekly Active Users (Monthly avg.)"
        }
    }
];</script>
  • 0
    Вы можете контролировать HTML? если так, было бы намного легче преобразовать в CSV в jscript и импортировать это в VBA ...
Теги:
excel-vba
scrape

1 ответ

0

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

document.getElementsByTagName("script")(4).innerText;   //Check the uppercase T in innerText

(Если он возвращает пустую строку, это означает, что скрипт из другого домена, если в этом случае вы не можете его получить).

ура

Ещё вопросы

Сообщество Overcoder
Наверх
Меню