这个项目是做 代理IP 池的。
对于,一些爬虫项目是刚需。
项目背景
- python3.7
- redis
- MacBook
你可以在我下面的栏目中了解,什么是 redis 以及如何用。
安装和使用
安装
git clone git@github.com:jhao104/proxy_pool.git
安装依赖
我使用了 conda 新创建了一个虚拟环境 py3.7
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
配置
- Config/setting.py
1 | DATABASES = { |
启动
首先需要开启 redis
。
进入 cli目录下通过ProxyPool.py启动
cd cli
程序分为:
- schedule 调度程序
- webserver Api服务
首先启动调度程序
python proxyPool.py schedule
然后启动webApi服务
python proxyPool.py webserver
这个时候,项目就已经开始爬取代理 IP 了。
使用
启动过几分钟后就能看到抓取到的代理IP,你可以直接到数据库中查看,推荐一个SSDB可视化工具。
也可以通过api访问 http://127.0.0.1:5010 查看。
api | method | Description arg |
---|---|---|
/ | GET api介绍 | None |
/get | GET 随机获取一个代理 | None |
/get_all | GET 获取所有代理 | None |
/get_status | GET 查看代理数量 | None |
/delete | GET 删除代理 | proxy=host:ip |
爬虫使用
如果要在爬虫代码中使用的话, 可以将此api封装成函数直接使用,例如:
1 | import requests |
在项目的 github 中有更深层次的进阶使用,可以去看一下