GitHub:https://github.com/imWildCat/scylla
中文文档:https://scylla.wildcat.io/zh/latest/
自己是一个爬虫爱好者,有时候爬虫写的太过强大了被目标网站封了(笑)。所以就萌生了用代理 IP 的想法。很可惜很多开源代理 IP 池都是没有持续维护的,代码也比较奇怪。于是自己就写了一个。特性大概有:
欢迎在贴中留下您的邮箱,我可以发送你 demo 地址(暂时不打算公开发布)。如果您想留邮箱,请注意:
附:几个截图 demo
截图 1: Web UI (代理 IP 列表)
截图 2: Web UI (代理 IP 的地理分布)
因为是用爬虫脚本自动爬 emails,所以:
**Email 地址请单独一行写,谢谢!**千万不要在 base64 后面加任何字符,这样会被我的智障脚本忽略。
另外,关于一些 features (#49):
@golmic 关于 IP 验证策略:目前的策略有点过于简单,由于这个项目已经写了一个月了,决定先发出来(骗一波 stars )让自己更有动力去写 =。= 我会在近期完善验证策略,并且把验证策略的文档完善: https://github.com/imWildCat/scylla/issues/16
@binux 原来这个名词叫 forward proxy,感谢!我其实一开始是有这样的想法的,但是有一些担心所以没在初版实现:
我考虑先加入随机分配代理的 forward proxy: https://github.com/imWildCat/scylla/issues/17
@zqjilove 收到需求,下一个小版本就加入: https://github.com/imWildCat/scylla/issues/18
1
Baboonowen 2018-05-27 08:02:00 +08:00 via Android
打破惨案
|
2
flyxl 2018-05-27 08:02:28 +08:00 via Android
赞楼主,求 demo
|
3
0312birdzhang 2018-05-27 08:06:43 +08:00 via iPhone
先赞一个
|
4
artandlol 2018-05-27 08:18:05 +08:00 via iPhone
YXJ0YW5kbG9sI2dtYWlsLmNvbQ==
|
5
golmic 2018-05-27 08:30:47 +08:00 via Android 1
|
6
binux 2018-05-27 08:30:57 +08:00 1
我一直觉得最好用的代理 IP 池接口就是 forward proxy。
forward proxy 对应用透明地自动 rotate,抓取的同时天然地自动验证。 |
7
B1ock 2018-05-27 08:58:07 +08:00
bWFza3NzQHByb3Rvbm1haWwuY29t
感谢 |
8
o00o 2018-05-27 09:06:43 +08:00
IHJvbW90Y0BnbWFpbC5jb20g
谢谢 |
9
panyanyany 2018-05-27 09:26:03 +08:00
NTY4Mzk3NDQwQHFxLmNvbQ==
请问楼主这些 ip 是从哪里来的呢,全网扫描还是? |
10
panyanyany 2018-05-27 09:27:35 +08:00
@panyanyany #9 不好意思,原来还有个 providers 文件夹,现在知道是扫公开的代理了
|
11
ThirdFlame 2018-05-27 09:34:56 +08:00
ZmFuZGVsYWppQGdtYWlsLmNvbQ==
|
12
airyland 2018-05-27 09:38:46 +08:00
赞,docker 无痛安装成功
|
13
zqjilove 2018-05-27 09:40:32 +08:00
API 接口支持国家输出就好了
|
14
131 2018-05-27 09:44:20 +08:00 via Android
YmxvZ0Btb2UuaW0=
谢谢! |
15
cyn 2018-05-27 09:48:00 +08:00
Y3lubGl0dGxlW2F0XTEyNi5jb20=
支持,感谢! |
16
dex2jar 2018-05-27 09:53:26 +08:00 via Android
ODA3NjYwMDcxQHFxLmNvbQ==
谢谢楼主。看起来挺好的,前段时间刚买了 5 块的 ip |
18
Sixzeroo 2018-05-27 09:56:47 +08:00
c2l4emVyb282MEBnbWFpbC5jb20=
感谢楼主 |
19
airyland 2018-05-27 09:57:21 +08:00
报个问题,开始接口报 500,过一会正常,运行一段时间后 stats 500,proxy 列表为空。
|
20
ccbikai 2018-05-27 10:21:35 +08:00 via iPhone
chi#miantiao.me 谢谢楼主,自己也在爬各个代理网站的 IP,支持 https 的很少
|
21
faceair 2018-05-27 10:23:01 +08:00 via iPhone
v2ex#faceair.me 感谢楼主
|
22
noqwerty 2018-05-27 10:35:17 +08:00 via Android
emhvdS56eS55aUBnbWFpbC5jb20=
谢谢楼主。 |
23
shenlw66 2018-05-27 10:38:32 +08:00
c2hlbmx3NjZAZ21haWwuY29t
感谢 |
24
tcpdump 2018-05-27 11:22:56 +08:00 via Android
回复标记一下
|
25
caoyufei 2018-05-27 11:33:10 +08:00
YXRjYW95dWZlaUBnbWFpbC5jb20=
感谢 |
26
cocang 2018-05-27 11:33:24 +08:00
Y2hvdWNoYW5nemh1QGdtYWlsLmNvbQ==
谢谢楼主 |
27
JakeZou 2018-05-27 11:44:25 +08:00
em91bHV4QDEyNi5jb20=
|
28
weegc 2018-05-27 12:00:49 +08:00
d2VlZ2NAMTYzLmNvbQ==
谢谢楼主 |
29
yfgeek 2018-05-27 12:03:06 +08:00 via iPhone 1
非常棒!正好有这个需求,粉了!
|
30
congeec 2018-05-27 12:32:31 +08:00 via iPhone
Q29uZ2VlY0BxcS5jb20=
好人一生平安 不过代理池怎么还有爬虫功能呢? |
31
chroming 2018-05-27 12:32:53 +08:00
跟这个比有什么优势吗? https://github.com/SpiderClub/haipproxy
|
32
ywind 2018-05-27 12:52:28 +08:00 via Android
Z3Vvc2h1a2FuZ0Bob3RtYWlsLmNvbQ==
感谢 |
33
Akagi201 2018-05-27 14:10:25 +08:00
YWthZ2kyMDFAZ21haWwuY29tCg==
|
34
gitopen 2018-05-27 14:53:34 +08:00 via Android
Z2l0b3BlbkBnbWFpbC5jb20=
|
35
alphabity 2018-05-27 15:13:11 +08:00
YWxwaGFiaXR5QGdtYWlsLmNvbQ==
|
36
lje024 2018-05-27 15:35:27 +08:00
c3JnYjY4OUBsamVlZHUubWw=
感谢 |
37
yodeser 2018-05-27 15:46:23 +08:00
eW9kZXNAeW9kZXMuY24=
感谢感谢 |
38
limitsy 2018-05-27 16:17:22 +08:00
bGltaXRzeTIxN0BnbWFpbC5jb20=
感谢 |
39
trimleo 2018-05-27 16:31:02 +08:00
bGVvY2xvdWR5QGdtYWlsLmNvbQ==
感谢 |
40
aiguozhedaodan 2018-05-27 16:35:23 +08:00
YWlndW96aGVkYW9kYW5AZ21haWwuY29t
感谢 |
41
cnyang 2018-05-27 16:55:05 +08:00
aGFoYUBvZmZpY2UyMDE2LnNpdGU=
不胜感激 |
42
hlwjia 2018-05-27 16:56:12 +08:00
aGx3amlhQGZveG1haWwuY29t
谢谢 |
43
IllBeBack 2018-05-27 16:58:43 +08:00
谢谢
enByZWdpc3RlckBnbWFpbC5jb20= |
44
yazoox 2018-05-27 17:09:36 +08:00 via Android
eWF6b294QHNpbmEuY29t
谢谢! |
45
JasonYo 2018-05-27 17:22:07 +08:00
Mjc3MTc5MjMwMUBxcS5jb20=
给力!大兄弟,多谢 |
46
j0hnj 2018-05-27 17:52:19 +08:00
bmlnZWxjaGlhbmdAb3V0bG9vay5jb20=
代码不错~ |
47
byron 2018-05-27 18:05:34 +08:00
Ynlyb25qaWFAZ21haWwuY29t
吼啊。 |
48
chenggiant 2018-05-27 18:10:05 +08:00
Y2hlbmdjaGlidEBnbWFpbC5jb20=
赞! |
49
echopan 2018-05-27 18:10:13 +08:00
ZWNob3BhbjEyMzRAaG90bWFpbC5jb20= 谢谢
|
50
WildCat OP @golmic
关于 IP 验证策略:目前的策略有点过于简单,由于这个项目已经写了一个月了,决定先发出来(骗一波 stars )让自己更有动力去写 =。= 我会在近期完善验证策略,并且把验证策略的文档完善: https://github.com/imWildCat/scylla/issues/16 @binux 原来这个名词叫 forward proxy,感谢!我其实一开始是有这样的想法的,但是有一些担心所以没在初版实现: - 担心自己实现的 forward proxy 性能不足比较鸡肋 - 担心 XX 找到 G 点说我 XXX (你懂) - 实现比较 rough 可能没什么用 - 还有就是如何给 clients 分配代理也是一个问题。一开始可以考虑随机分配,但是我理想的情况是: - a. clients 的 HTTP Request 带一个类似 hash 的 header,固定 hash 对应固定代理 - b. Scylla 里自动分析请求的 HTTP Header,比如针对 Cookies 中的 session 做一次 hashing。如果判定是同一个 session 的请求,就用同一个 IP。难点在于如何判断 session id。 我考虑先加入随机分配代理的 forward proxy: https://github.com/imWildCat/scylla/issues/17 @airyland 请发下 logs,非常感谢! @zqjilove 收到需求,下一个小版本就加入: https://github.com/imWildCat/scylla/issues/18 |
51
momocraft 2018-05-27 18:42:05 +08:00
bWVAam9rZXN0ZXIuaW8=
感谢 (应该不会用很多) |
52
bbbb 2018-05-27 18:55:35 +08:00 via iPhone
aGVsbG9oZnlAZ21haWwuY29t
|
53
SingeeKing 2018-05-27 18:56:21 +08:00
aW1zaW5nZWVAZ21haWwuY29t
|
54
WildCat OP > @chroming 提问: 跟这个比有什么优势吗? https://github.com/SpiderClub/haipproxy
既然你诚心诚意的发问了,那我就王婆卖瓜下啦( 233 ): 对比 https://github.com/SpiderClub/haipproxy,这个项目的想法如下: 1. 更简单的依赖,不需要 scrapy-splash 或者 redis。 2. 更优秀的文档,包括代码文档(虽然目前不是很完善)。 3. 我写了一些测试,尽力保证项目的可用性、维护性。 4. 完善的 Community profile ( https://github.com/imWildCat/scylla/community ),对比: https://github.com/SpiderClub/haipproxy/community。即使我以后不维护这个项目了,也希望尽可能方便大家参( jie )与( pan ) 5. README 和文档里使用“盘古之白”(中文和西文字符标点之间注意加了合适的空格,适合强迫症患者阅读),参见: https://github.com/vinta/pangu.js/blob/master/README.md 6. 一个 `scylla` 命令或者其他 docker 命令即可启动,没那么多幺蛾子命令: https://github.com/SpiderClub/haipproxy#%E6%9C%8D%E5%8A%A1%E7%AB%AF |
55
fy 2018-05-27 19:18:55 +08:00
资瓷一下。
ZnkwQHFxLmNvbQ== |
56
avichen 2018-05-27 19:29:01 +08:00
YXZpY2hlbkAxMjYuY29t
谢谢 |
57
armysheng 2018-05-27 21:17:19 +08:00
YXJteXNoZW5nQGdtYWlsLmNvbQ==
|
58
mikezy123 2018-05-27 22:01:56 +08:00 via iPhone
am95emVuZzU1NUBnbWFpbC5jb20=
感谢 |
59
breaklayer 2018-05-27 22:08:41 +08:00
YnJlYWtsYXllckAxNjMuY29t
感谢 |
60
davidf 2018-05-27 22:17:11 +08:00
c3psZGZAb3V0bG9vay5jb20=
谢谢 |
61
Cipool 2018-05-27 22:22:08 +08:00 via Android
YTIyMTMxMDhAeWFob28uY29t
麻烦了 |
62
l9rw 2018-05-27 22:37:04 +08:00
aUBsOXJ3LmNu
感谢老哥 |
63
chroming 2018-05-27 22:40:42 +08:00 1
@WildCat #54 感谢回复。文档确实十分完善,代码也很清晰。
提一个小建议,Windows 无法直接安装 sanic,需手动设置 `SANIC_NO_UVLOOP=true` `SANIC_NO_UJSON=true` 两个环境变量才可安装。后期是否会考虑使用其他兼容 Windows 的后端模块来替换 sanic |
64
skwfar 2018-05-27 23:37:30 +08:00
c2t3ZmFyQGdtYWlsLmNvbQ==
十分感谢 |
65
WildCat OP @chroming 由于目前还有太多工作需要做,暂时不考虑替换 Sanic。Win 上应该可以用 Linux 子系统解决这个问题
|
66
Lentin 2018-05-28 00:45:42 +08:00
bGVudGluQG91dGxvb2suY29t
|
67
okface 2018-05-28 00:47:31 +08:00 via Android
zgp6300[at]dingtalk.com
|
68
Seth8277 2018-05-28 00:54:09 +08:00 via Android
bWFpbEBpbXNldGguY24=
谢谢 |
69
WhyLiam 2018-05-28 09:15:31 +08:00
bGlhbXpodWNlQGdtYWlsLmNvbQ==
|
70
leeger 2018-05-28 09:27:42 +08:00
emx2aXJtYWNoMUBnbWFpbC5jb20=
谢谢~~~~ |
71
yazoox 2018-05-28 09:56:44 +08:00
不好意思,楼主。不是很懂这个搜索出来的 proxy 怎么使用?
我在你的 github 里面提了一个问题, 有空可以去看看。 简单说,就是我用 SwitchyOmega,设置了一个 Scylla 搜索出来的 IP:PORT 地址,但是,貌似没啥用啊?连网络都不通...... |
72
suxing 2018-05-28 11:33:43 +08:00
MTQzMjg0NTE4M0BxcS5jb20=
|
73
saymoon 2018-05-28 12:26:55 +08:00
c2F5bW9vbkBnbWFpbC5jb20=
感谢 |
74
ftxg 2018-05-28 12:44:11 +08:00
anVob25neGlhb3Nob3VAMTYzLmNvbQ==
|
75
gonglexin 2018-05-28 15:34:03 +08:00
Z29uZ2xleGluQGdtYWlsLmNvbQ==\n
|
76
twMM 2018-05-28 16:28:56 +08:00
dGFuZ3RhbzM2NkAxNjMuY29t
谢谢楼主 |
77
lanxyou 2018-05-28 17:05:55 +08:00
感谢
bGFueHlvdUBnbWFpbC5jb20= |
78
keventseng 2018-05-29 11:25:33 +08:00
Y2F0emlAdmlwLnFxLmNvbQ==
|
79
iOran 2018-05-29 13:08:39 +08:00
aW9zdGlueUB5YWhvby5jb20NCg==
|
80
ARhen 2018-05-29 14:14:52 +08:00
bDEwMTA5MDgzMjZAZ21haWwuY29t
谢谢楼主~ |
81
undertonememorie 2018-05-29 15:14:40 +08:00
aUBqb2tlci5vcmcuY24=
谢谢楼主 |
82
ye3245 2018-05-29 18:27:28 +08:00
eWUzMjQ1QHNpbmEuY29t
感谢 |
83
Mervyn 2018-05-30 18:06:42 +08:00
bGlmZWlmZWljaG5AMTYzLmNvbQ==
谢谢楼主。 |
84
rik7821 2018-05-31 11:15:24 +08:00
cmlrNzgyMUAxNjMuY29t
谢谢楼主 |
85
MikeFeng 2018-06-01 13:59:46 +08:00
cWlubGFuZmVuZ0Bmb3htYWlsLmNvbQ==
感谢 |
86
caoyufei 2018-06-01 15:09:28 +08:00
ipinfo
Rate limit exceeded. Subscribe to a paid plan to increase your usage limits at http://ipinfo.io/pricing, or contact us via http://ipinfo.io/contact |
87
oddcc 2018-06-07 15:42:45 +08:00
c2t5Y2M3MTY0MEBnbWFpbC5jb20=
谢谢! |
88
qcloud 2018-06-13 09:45:06 +08:00
搭建之后,没有 IP 耶............
|
89
qcloud 2018-06-13 10:01:52 +08:00
OTM1MjI3Nzk5QHFxLmNvbQ==
3Q |
91
skyzan 2018-06-25 21:26:31 +08:00 via Android
MTc4MTU2NDE5NkBxcS5jb20=
感谢 |
92
a861123145 2018-07-22 20:05:44 +08:00
YTg2MTEyMzE0NUBnbWFpbC5jb20K
感谢 |
93
7lsu 2019-06-13 15:51:01 +08:00
bWlra3V5b0BnbWFpbC5jb20=
谢谢 |