eznio / xget
基于XPATH的网站解析库
v1.1
2017-10-05 12:20 UTC
Requires
- php: >=5.4.0
- eznio/ar: *
- guzzlehttp/guzzle: ^6.2
- stil/xpath-selector: ^2.0
Requires (Dev)
- phpunit/phpunit: ~5.0
This package is not auto-updated.
Last update: 2024-09-27 22:44:40 UTC
README
用法
通过单个查询解析元素(-s)
$result = (new \eznio\xget\Xget(new \GuzzleHttp\Client())) ->setUrl('http://spb.questguild.ru/choose_city') ->parse([ 'cities' => '//ul[@class="list-check"]/li/a' ]); $cities = ['Moscow', 'Saint-Petersburg', ... ];
通过嵌套子查询解析元素
稍微复杂一点的情况。
首先,您使用 @ 数组键设置要解析的根节点。
然后,您使用从父查询结果根部的XPath查询定义从根元素解析的元素。
$result = (new \eznio\xget\Xget(new \GuzzleHttp\Client())) ->setUrl('http://spb.questguild.ru/choose_city') ->parse([ 'cities' => [ '@' => '//ul[@class="list-check"]/li', 'city' => '//a', 'url' => '//a/@href' ] ]); $cities = [ [ 'name' => 'Moscow', 'url' => 'http://moscow.questguild.ru', ], [ 'name' => 'Saint-Petersburg', 'url' => 'http://spb.questguild.ru', ], . . . ];