XML、HTML 可以用 XPath 抓取, JSON 當然也要 XPath 來抓~ XD
XPath for JSON Library (PHP、JavaScript)
XPath for JSON 的 Function 有 JavaScript 與 PHP 版本.
- XPath for JSON 官方網頁: JSONPath - XPath for JSON
- Open Source 專案: jsonpath - XPath like syntax for JSON
- 範例、測試程式: jsonpath - /trunk/tests
PHP 的範例寫法 (取自官方網頁)
- <?php
- require_once('json.php'); // JSON parser
- require_once('jsonpath.php'); // JSONPath evaluator
- $json = '{ ... }'; // JSON structure from above
- $parser = new Services_JSON(SERVICES_JSON_LOOSE_TYPE);
- $o = $parser->decode($json);
- $match1 = jsonPath($o, "$..author");
- $res1 = $parser->encode($match1);
- $res2 = $parser->encode($match2);
- ?>
但是 JSON 本來就可以輕易 eval()、json_decode() ... 等等直接轉成物件取用, 為何還要用 XPath 還沒想到原因.
所以, 先做個記錄而已, 上述的範例程式都沒做過測試, 請小心取用~ 😛