jackyban/urlscanner

Scan URLs FROM A CSV FILE AND REPORT INACCESSIBLE URLs

1.0.3 2019-09-11 11:29 UTC

This package is auto-updated.

Last update: 2024-04-11 22:09:34 UTC


README

从传入包含url的数组进行扫描并报告不可访问的URL

  • 支持传入url数组返回有效链接
  • 支持传入单条url验证有效性
  • 也可以支持从CSV文件扫描URL,但须加载额外的插件 league/csv,已经包含在composer.json里。 非必须加载,但是要自己解析成数组再传入进行验证。

安装说明

推荐使用composer安装,使用composer能更好的控制版本

composer require jackyban/urlsanner

也可以使用git方式

git clone https://github.com/jackyban/urlscanner.git

使用说明

首先需要引入composer自动加载类,如果使用git或其它方式,可能需要手动添加autoload.php或者自己写自动加载。 大部分框架都支持自动加载,这里推荐使用lavaral;

  require "vendor/autoload.php";
  // 传入的url数组
  $urls = [
      "http://darlingsky.cn",
      "http://laravel-academy.org",
      "https://packagist.org"
  ];
  // 实例化scanner对象
  $scanner =  new \JackyBan\UrlScanner($urls);

返回所有不可访问的链接:

  $arr = $scanner->getInvalidUrls();
  print_r($arr);

  //输出:
  array (
    0 =>
    array (
      'url' => 'http://darlingsky.cn',
      'status' => 500,
    ),
    1 =>
    array (
      'url' => 'http://packagist.org',
      'status' => 500,
    ),
  )
  // 这里只是示例,以实际返回结果为准。返回结果为二维数组,每个子数组包含`url`和`status`两个参数。没有则返回空数组。

返回所有可访问的链接:

  $arr = $scanner->getValidUrls();
  print_r($arr);

  //输出:
  array (
    'url' => 'http://darlingsky.cn',
    'url' => 'http://packagist.org',
  )
  // 这里只是示例,以实际返回结果为准。返回一维数组,所有可访问的链接。没有则返回空数组。

验证单条链接有效性:

  $bool = $scanner->verifyUrl();
  var_dump($bool);

  //输出:
  true or false
  // 返回结果为`Boolean`类型。

从url数组里取出一条可访问的链接:

  $url = $scanner->getOneValidUrls();
  print_r($url);

  //输出:
  'http://darlingsky.cn' or false
  // 返回一条可访问的链接,如果都不能访问则返回false。