打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
python 爬虫使用scylla项目作为代理ip池
scylla github
scylla 中文手册
配置环境概诉:
windos10
python 3
node.js -- npm环境
后话前说
除了pip安装还有两种方式
(一)、基于官方文档的方式三+正向代理服务器功能
基于官方文档的方式三下载完整项目在本地运行, 并使用curl和request集成的正向代理服务器功能获取代理ip,
实际发现, 方式三+ 正向代理服务器虽然能够成功获取代理ip , 但是大部分代理ip不能用, 所以最终改为windos下docker部署并接口获取代理ip
巨坑, 请跳过下面有关 方式三+ 正向代理服务器 的配置
(二)、官网方式一(docker部署) + API接口
使用docker部署, 接口方式获取代理ip
推荐使用这种方式, 但本人 (一) 配置失败后发现ip可用性不高就放弃了scylla, 所以没再继续配置下去
scylla 简介
scylla 是一款高质量的免费代理 IP 池工具,仅支持 Python 3.6。特性如下:
自动化的代理 IP 爬取与验证
易用的 JSON API
简单但美观的 web 用户界面,基于 TypeScript 和 React(例如,代理的地理分布)
最少仅用一条命令即可启动
简明直接的编程 API(将在 1.1 版本中加入)
最少仅用一行代码即可与Scrapyrequests 进行集成
无头浏览器(headless browser crawling)爬虫
注意: 暂不支持https
(一)、scylla完整项目部署+正向代理服务器功能
由于本人使用方式二,pip安装时自动部署一个附属组件pycurl时出错:
Command "python setup.py egg_info" failed with error code 10 in C:\Users\Public\Documents\Wondershare\CreatorTemp\pip-install-2vh3p5oi\pycurl
墙内墙外都找遍了也没有解决方案, 所以以下讨论方式三、通过github下载整个项目, 修改其requirements.txt文件使其不再自动部署pycurl避免出错, 运行该项目从而搭建本地正向代理ip池。
前置工作:
升级pip和setuptools工具。
pip install --upgrade setuptoolspython -m pip install --upgrade pip
手动下载pycurl组件包:
这一步主要是因为在windos上安装scylla 都会在自动下载pycurl上出错, 我们这里先将其手动下载并安装。下载地址: 插件库中选pycurl 64版本最新一个
下载后将文件放到python安装目录(如果是虚拟环境, 则为虚拟环境的Scripts目录),和pip.exe同一目录
然后使用pip 安装
//cd 到pip.exe和下载文件都在的python安装目录//如果是虚拟环境, 则为虚拟环境的python安装目录cd C:\Users\LittleTrue\AppData\Local\Programs\Python\Python37//然后使用pip 安装pip install [下载第三方模块的文件名] //我下载的是pycurl-7.43.1-cp37-cp37m-win_amd64.whl
提示successfull则安装pycurl成功, 能够避免scylla 自动安装时失败。
按照scylla 中文手册
下载并构建项目:
git clone https://github.com/imWildCat/scylla.gitcd scylla//在scylla下requirements.txt文件修改pycurrl版本为你前置工作中下载并安装的版本pip install -r requirements.txtnpm install make build-assets //本步不执行则访问不了部署在本地的web界面, 但是curl和正向代理访问获取依然可以获取代理ip
运行项目:
cd 到scylla项目python -m scylla//python3 -m scylla
服务运行在本地(localhost),使用口号 8899。
每次运行本项目时,需要等待 1~2 分钟以爬取一定量的代理 IP。
图片.png
获取项目的代理ip:
curl获取
curl http://api.ipify.org -x http://127.0.0.1:8081
图片.png
集成在request项目中
requests.get('http://api.ipify.org', proxies={'http': 'http://127.0.0.1:8081'})
图片.png
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
工具|Immunity Canvas安装踩坑、简单使用及虚拟机
python使用pycurl模块详解
4soaplib:soaplib:pycurl,PIL模块 组建
踩坑记:终于怀着忐忑的心情完成了对 python 爬虫扩展库 pyspider 的安装
Python爬虫的三方库有哪些?
Python PycURL 网络编程 [Python俱乐部]
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服