metlar/proxy-checker

代理检查器

dev-master 2022-02-15 22:07 UTC

This package is auto-updated.

Last update: 2024-09-16 04:15:44 UTC


README

一个用于检查代理的PHP类。

使用PHP检查代理的方法有很多。

我创建了这个类,用于快速和多线程检查代理服务器。

安装(通过composer)

获取composer 并将其添加到 composer.json 文件的 requires 部分中

{
    "require": {
        "metlar/proxy-checker": "dev-master"
    }
}

然后

composer install

或者

使用 composer 通过包名直接安装

$ composer require metlar/proxy-checker

在 composer 中运行扫描代理

$ composer run:proxy

用法

非常简单。

  • 将代理添加到文件 source/proxylist.txt
  • 创建一个实例,并运行 execute()
<?php
 require_once __DIR__ . '/../vendor/autoload.php';
 
 use \Metlar\Proxy\ProxyChecker;
 
 $container = require __DIR__ . '/../config/bootstrap/container.php';
 
 $proxy = $container->get(ProxyChecker::class);
 $proxy
     //->setProxy(["176.9.63.62:3128", "176.9.75.42:3128","47.243.228.222:59394","20.105.253.176:8080","117.127.16.205:8080"])
     ->saveToFormat('json')
     ->getResultArray();
  • 结果将保存在文件 logs/result.txt 中,或者如果设置了 $proxy->save('json'),则保存在 logs/result.json

您可以使用附加方法更改类的设置

     ->setProxy(["176.9.63.62:3128", "176.9.75.42:3128","47.243.228.222:59394","20.105.253.176:8080","117.127.16.205:8080"])
     ->saveToFormat('json')
     ->getResultArray();
  • 设置保存数据格式,默认设置为:txt,可以保存为 jsoncsv
$proxy->saveToFormat('json');
  • 获取扫描的代理列表数组结果
$proxy->getResultArray();
  • 文件设置 config/settings/default.yml
proxy_checker:
  curl:
    checkpoint_url: 'http://httpbin.org/get'
    thread: 5
  console:
    show: true
  log_results:
    filename: 'result'
    path: '/../../../logs/'
  proxy-list:
    path: '/../../../source/'
    filename: 'proxylist.txt'

许可证

MIT许可证。请参阅包含的 LICENSE.md。