从Web获取免费代理

async-freeprox的Python项目详细描述


免费代理获取

获取网上的有效免费代理。

使用方法

首先先确保安装了依赖包:

  # 终端运行
  pip install -r requirements.txt

一次性获取有效的代理

非常简单, 直接使用proxy.py文件中的run_getter_and_tester函数, 即可 返回一个有效的代理池集合(set)。

TEST_URL='https://wwww.baidu.com'data=run_getter_and_tester(TEST_URL)print(data)

返回结果:

finaly we got 17  validated proxies!
{'183.157.4.173:8118', '222.128.9.235:33428', 
 ...}

建议把TEST_URL改成你的目标爬虫网站

维持一个代理池

考虑到免费代理的有效生命周期较短, 所以需要不断地获取免费代理->加入代理池(这里使用的是redis)->验证池中代理的有效性。 在设置完settings中的:

  • TEST_URL (一般是爬虫的对象网站)
  • INTERVAL (获取代理的间隔)
  • FREEPROXY_REDIS_NAME (redis代理池名称) 运行方法:
# 终端运行pythonmain.py

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带有空参数的java Spring数据jpa本机查询(PostgreSQL)   java从SpringRESTTemplate获取主机   Java:使用socket时无法通过临时连接到其他计算机   Java HTML解析具有无限滚动的页面   java文档化TestNG测试用例   雅加达ee开始Java编程,我应该从哪里开始?   java Jetty Websocket服务器在本地工作,但远程连接失败并出现“主机关闭”错误,如何修复?   spring GraphQL Java:带有springboot的GraphQL Java不加载游乐场http://localhost:3001/playground   类Lcom/google/firebase/FirebaseApp中没有虚拟方法zzbzo()Z;或者它的超类   java为什么我得到了0的位置?什么时候应该是1   获取字符串[][Ljava.lang.String@   java配置用于JSP(Tomcat)的附加库   用java C++加密CryptoAPI SIMPLEBLOB   java如何通过系统上的单元测试。犯错误   java使用object o=“”)创建的对象的类型;   java JOOQ嵌套查询   java按计数排序HQL   java获取Springbeans初始化时间   java无法打开mallet日志记录。属性文件   java如何在改造中实现自定义缓存(仅适用于特定方法)