Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kiddyuchina/Beanbun
Beanbun 是用 PHP 编写的多进程网络爬虫框架,具有良好的开放性、高可扩展性,基于 Workerman。
https://github.com/kiddyuchina/Beanbun
beanbun crawler php spider
Last synced: about 1 month ago
JSON representation
Beanbun 是用 PHP 编写的多进程网络爬虫框架,具有良好的开放性、高可扩展性,基于 Workerman。
- Host: GitHub
- URL: https://github.com/kiddyuchina/Beanbun
- Owner: kiddyuchina
- License: mit
- Created: 2017-04-13T04:40:26.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-04-10T10:04:04.000Z (over 1 year ago)
- Last Synced: 2024-10-22T05:42:54.966Z (about 2 months ago)
- Topics: beanbun, crawler, php, spider
- Language: PHP
- Homepage:
- Size: 80.1 KB
- Stars: 1,247
- Watchers: 77
- Forks: 251
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-php-cn - Beanbun - 多进程网络爬虫框架 (目录 / 爬虫 Scraping)
README
### 简介
Beanbun 是一个简单可扩展的爬虫框架,支持分布式,支持守护进程模式与普通模式,守护进程模式基于 [Workerman](http://www.workerman.net),下载器基于 [Guzzle](http://guzzlephp.org)。
### 文档
https://github.com/kiddyuchina/Beanbun/blob/master/docs/chs/README.md
### 广告
推荐一下最近发现的一个很好用的全球代理:[SmartProxy](https://www.smartproxy.cn/regist?invite=DX6M5P)
专业海外http代理商,有1亿真实住宅IP资源,覆盖全球,高匿稳定提供100%原生住宅IP,支持社交账户、电商平台、网络数据收集等服务。
匿名性很好,伪装度很高,IP限制问题轻松解决。
本人测试用过之后感觉很不错。
现春季价格优惠,动态住宅代理只要65折!### 特点
- 支持守护进程与普通两种模式(守护进程模式只支持 Linux 服务器)
- 默认使用 guzzle 进行爬取
- 支持分布式
- 支持内存、Redis 等多种队列方式
- 支持自定义URI过滤
- 支持广度优先和深度优先两种爬取方式
- 遵循 PSR-4 标准
- 爬取网页分为多步,每步均支持自定义动作(如添加代理、修改 user-agent 等)
- 灵活的扩展机制,可方便的为框架制作插件:自定义队列、自定义爬取方式...### 安装
Beanbun 可以通过 composer 进行安装。
```
$ composer require kiddyu/beanbun
```### 快速开始
创建一个文件 start.php,包含以下内容
``` php
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
```
接下来就可以看到抓取的日志了。### 插件
- beanbun-parser 数据抽取插件 https://github.com/kiddyuchina/beanbun-parser
更多详细内容,请查看 [文档](https://github.com/kiddyuchina/Beanbun/blob/master/docs/chs/README.md)