scylla

Python 2025-08-21

Banner_ <span class = scylla“ style =”最大宽度:100%;“>

scylla

一个智能的人文代理池,从互联网中提取内容并在这个新的AI时代建立自己的大型语言模型。

关键功能:

  • 自动代理IP爬网和验证
  • 易于使用的JSON API
  • 简单但美丽的基于网络的用户界面(例如代理的地理分布)
  • 最少的1个命令开始
  • 简单的http forward代理服务器
  • 砂纸和要求仅与1行代码相结合
  • 无头浏览器爬行

开始

安装

与Docker一起安装(强烈建议)

scylla --name scylla wildcat/ scylla :latest">
docker run -d -p 8899:8899 -p 8081:8081 -v /var/www/ scylla :/var/www/ scylla --name scylla wildcat/ scylla :latest

直接通过PIP安装

scylla scylla --help scylla # Run the crawler and web server for JSON API">
pip install scylla
scylla --help
scylla # Run the crawler and web server for JSON API

从源安装

scylla pip install -r requirements.txt cd frontend npm install cd .. make assets-build python -m scylla ">
git clone https://gi**thu*b.com/imWildCat/scylla.git
cd scylla

pip install -r requirements.txt

cd frontend
npm install
cd ..

make assets-build

python -m scylla 

用法

这是使用端口8899在本地运行服务(Localhost)的一个示例。

注意:您可能需要等待1到2分钟才能首次使用scylla在数据库中填充一些代理IP。

JSON API

代理IP列表

http://localh*o*st:*8899/api/v1/proxies

可选的URL参数:

参数 默认值 描述
1 页码
限制 20 每个页面显示的代理数量
匿名的 任何 是否显示匿名代理。可能的值:是的,只有匿名代理;错误,只有透明的代理
https 任何 是否显示HTTPS代理。可能的值:是的,只有https代理;错误,只有http代理
国家 没有任何 特定国家的过滤代理。格式示例:我们或多countries:US,GB

样本结果:

{
    "proxies" : [{
        "id" : 599 ,
        "ip" : " 91.229.222.163 " ,
        "port" : 53281 ,
        "is_valid" : true ,
        "created_at" : 1527590947 ,
        "updated_at" : 1527593751 ,
        "latency" : 23.0 ,
        "stability" : 0.1 ,
        "is_anonymous" : true ,
        "is_https" : true ,
        "attempts" : 1 ,
        "https_attempts" : 0 ,
        "location" : " 54.0451,-0.8053 " ,
        "organization" : " AS57099 Boundless Networks Limited " ,
        "region" : " England " ,
        "country" : " GB " ,
        "city" : " Malton "
    }, {
        "id" : 75 ,
        "ip" : " 75.151.213.85 " ,
        "port" : 8080 ,
        "is_valid" : true ,
        "created_at" : 1527590676 ,
        "updated_at" : 1527593702 ,
        "latency" : 268.0 ,
        "stability" : 0.3 ,
        "is_anonymous" : true ,
        "is_https" : true ,
        "attempts" : 1 ,
        "https_attempts" : 0 ,
        "location" : " 32.3706,-90.1755 " ,
        "organization" : " AS7922 Comcast Cable Communications, LLC " ,
        "region" : " Mississippi " ,
        "country" : " US " ,
        "city" : " Jackson "
    },
    ...
    ],
    "count" : 1025 ,
    "per_page" : 20 ,
    "page" : 1 ,
    "total_page" : 52
}

系统统计

http://*loc*a*lhost:8899/api/v1/stats

样本结果:

{
    "median" : 181.2566407083 ,
    "valid_count" : 1780 ,
    "total_count" : 9528 ,
    "mean" : 174.3290085201
}

http向前代理服务器

默认情况下, scylla将在端口8081上启动HTTP远期代理服务器。此服务器将选择最近从数据库更新的代理,并将用于远期代理。每当HTTP请求到达时,代理服务器都会随机选择代理。

注意:目前不支持HTTPS请求。

使用此代理服务器的卷发示例如下:

curl http://api.*ipi**fy.org -x http://127.*0*.*0.1:8081

您也可以将此功能与请求一起使用:

 requests . get ( 'http://api.*ipi**fy.org' , proxies = { 'http' : 'http://127.*0*.*0.1:8081' })

Web UI

打开http:// localhost:8899在您的浏览器中查看该项目的Web UI。

代理IP列表

http://l*o*calh*ost:8899/

截屏:

屏幕截图列表

全球分布图

http://l*o*calh*ost:8899/#/geo

截屏:

屏幕截图 -  geo分布

API文档

请阅读模块索引。

路线图

请参阅项目。

发展和贡献

scylla pip install -r requirements.txt npm install make assets-build">
git clone https://gi**thu*b.com/imWildCat/scylla.git
cd scylla

pip install -r requirements.txt

npm install
make assets-build

测试

如果您希望在本地进行测试,则命令如下:

pip install -r tests/requirements-test.txt
pytest tests/

欢迎您在该项目中添加更多测试用例,从而增加该项目的鲁棒性。

该项目的命名

scylla源自美国电视连续剧《越狱》中的一组记忆筹码的名称。该项目以美国电视连续剧的名字命名,以向其致敬。

帮助

如何在Centos7上安装Python scylla

捐款

如果您觉得这个项目有用,请您捐出一些钱吗?

不管这笔钱多少钱,您的捐款都会激发作者不断开发新功能! ?谢谢!

捐赠方式如下所示:

Github赞助商

如果您可以在这里加入我的赞助商,我非常感谢。

https://**git*hub.com/sponsors/imwildcat

贝宝

执照

Apache许可证2.0。有关更多详细信息,请阅读许可证文件。

下载源码

通过命令行克隆项目:

git clone https://github.com/imWildCat/scylla.git