ulib/grabber
最新稳定版本:1.1.7
Composer 安装命令:
composer require ulib/grabber
包简介
ULIB page grabber
README 文档
README
A small library for fetching data from the ULIB phone directory.
Requirements
- PHP
8.4+ ext-curlext-domext-libxml
Usage
<?php declare(strict_types=1); use Ulib\Grabber\UlibPhoneDirectory; $grabber = new UlibPhoneDirectory([ 'firstname' => 'Jan', 'sort' => 1, ]); $users = $grabber->getUsers(); $paginator = $grabber->getPaginator(); $pageResult = $grabber->getPageResult();
Supported query parameters:
firstname, lastname, phone, room, mail, department, page, sort, column.
The second constructor argument is an optional proxy server (host:port).
Extensibility
The library is split into independent parts so new grabbers are easy to add:
- HTTP transport:
/Users/padox/Sites/personal/ulib-grabber/src/Http/HttpClientInterface.php - Default cURL transport:
/Users/padox/Sites/personal/ulib-grabber/src/Http/CurlHttpClient.php - Parser contract:
/Users/padox/Sites/personal/ulib-grabber/src/Parser/PhoneDirectoryParserInterface.php - Default parser:
/Users/padox/Sites/personal/ulib-grabber/src/Parser/PhoneDirectoryParser.php
You can inject your own parser or HTTP client:
<?php declare(strict_types=1); use Ulib\Grabber\Http\HttpClientInterface; use Ulib\Grabber\Parser\PhoneDirectoryParser; use Ulib\Grabber\UlibPhoneDirectory; $customHttpClient = new class() implements HttpClientInterface { public function get(string $url, ?string $proxy = null): string { // custom transport implementation return file_get_contents($url) ?: ''; } }; $customParser = new PhoneDirectoryParser(); $grabber = new UlibPhoneDirectory([], null, $customParser, $customHttpClient);
Smoke test
./bin/smoke-test.php
统计信息
- 总下载量: 34
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 0
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: Unknown
- 更新时间: 2022-10-27