Рубрики
Uncategorized

Bean bun: Простой и открытый фреймворк PHP-сканера

Автор оригинала: David Wong.

Булочка с фасолью

Beanbun-это многопроцессорная платформа веб-сканера, написанная на PHP, которая обладает хорошей открытостью и высокой масштабируемостью. Адрес проекта: https://github.com/kiddyuchin… Адрес документа: Адрес документа:

происхождение

Я хочу, чтобы у меня была платформа для искателя, в которой вы могли бы быстро создать полнофункциональный искатель с минимальным кодом для простых требований, и, если хотите, вы можете внести любые изменения, которые вы хотите внести в искатель. Он, естественно, должен поддерживать распределенную , многопроцессорную (или потоковую) поддержку, используя composer, он может легко создать мощный искатель. После постоянного удаления и корректировки функций рептилии, написанных ранее, появляется текущая бобовая булочка. Название происходит от кошки автора, которую зовут Починка. Починка-это своего рода лапша на севере. Ментин – > Мешок с фасолью – > Булочка с фасолью. Я надеюсь, что смогу внести свой вклад здесь и продолжить улучшать Bean bun вместе с вами.

Характеристика

  • Поддержка демонического и обычного режимов (режим демона поддерживает только серверы Linux)

  • По умолчанию используйте Guzzle для обхода

  • Поддержка Распределенных

  • Поддержка памяти, Redis и других методов организации очередей

  • Поддержка пользовательской фильтрации URL-адресов

  • Поддержка в первую очередь по ширине и в первую очередь по глубине ползущий

  • Следуйте стандарту PSR-4

  • Обход веб-страниц разделен на множество шагов, каждый шаг поддерживает пользовательские действия (такие как добавление агентов, изменение агента пользователя и т.д.).

  • Гибкий механизм расширения, легко создавать плагины для фреймворка: пользовательская очередь, пользовательский режим обхода..

устанавливать

Бобовая булочка может быть установлена через composer.

$ composer require kiddyu/beanbun

Простой пример

Создайте начало файла. PHP, который содержит следующий

php
require_once(__DIR__ . '/vendor/autoload.php');

use Beanbun\Beanbun;
$beanbun = new Beanbun;
$beanbun->seed = [
    'http://www.950d.com/',
    'http://www.950d.com/list-1.html',
    'http://www.950d.com/list-2.html',
];
$beanbun->afterDownloadPage = function($beanbun) {
    file_put_contents(__DIR__ . '/' . md5($beanbun->url), $beanbun->page);
};
$beanbun->start();

Выполнить из командной строки

$ php start.php

Далее вы можете увидеть захваченный журнал.

2017-04-04 14:14:14 Beanbun worker download http://www.950d.com/ success.
2017-04-04 14:14:14 Beanbun worker download http://www.950d.com/list-1.html success.
2017-04-04 14:14:14 Beanbun worker download http://www.950d.com/list-2.html success.

Последний

Позже я напишу несколько небольших примеров использования Bean bun для реализации искателей для различных типов веб-сайтов. Вы можете продолжать обращать на них внимание.

Оригинал: “https://developpaper.com/beanbun-a-simple-and-open-php-crawler-framework/”