ulib/grabber 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

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-curl
  • ext-dom
  • ext-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

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2022-10-27

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固