Python爬虫实战之:快代理搭建IP代理池(简版)

前言

你好,我是Dr.叶子,用心写最优美的博客,弹最好听的钢琴!

项目背景

  • 最近,我在整理爬虫知识点,发现大多网站主流反爬虫的手段一般是“IP封锁”,我们为了防止个人IP被禁,首先想到的就是搭建“IP代理池”作为第一道防屏蔽策略。
  • 网上的一些知识太过于零散,项目代码不规范,所以亲自搭建实战项目,与大家分享!

项目简介

本项目主要基于Python搭建简单爬虫,爬取快代理网站的IP数据,经过有效性验证后,通过Pandas库储存到Excel文件,形成IP代理池,方便以后开展更多的爬虫项目,能防止个人IP被封锁。

前期准备

  1. 操作系统:Windows 8.1;
  2. 语言版本:Python 3.7;
  3. 开发工具:Pycharm 2.1 专业版;
  4. requests 库:发起请求;
  5. pandas 库:处理数据;
  6. bs4 库:解析文档;
  7. faker 库:自动随机生成 user-agent;

讲解1:项目搭建

1. 打开 Pycharm: 新建 python 项目

# 首先,新建项目文件夹
File > New Project > Pure Python > ... > Create

# 其次,新建 kuaidaili.py 文件
右键项目文件夹 > New > Python File > ... > Create
  • 如图:

在这里插入图片描述

在这里插入图片描述

  • 搭建完成,项目结构如下图:

在这里插入图片描述


讲解2:安装 faker 库获取user-agent

# 在终端执行
pip install faker 

报错: 连接超时
在这里插入图片描述
解决: 更换成豆瓣镜像

pip install faker -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

在这里插入图片描述

如上图显示,则表示安装成功
其他库的安装同理,不再累赘


讲解3:分析 “快代理” 页面

1. 分析请求路径:

  • 第 1 页
    https://www.kuaidaili.com/free/inha/1/
  • 第 2 页
    https://www.kuaidaili.com/free/inha/2/
  • 第 3 页
    https://www.kuaidaili.com/free/inha/3/
    … …
    … …
  • 第 n 页
    https://www.kuaidaili.com/free/inha/n/

如图:
在这里插入图片描述

总结: 请求路径尾部的数字代表请求的是第几页,所以只要在代码里循环改变这个数字就能可持续请求爬虫。

2. 分析前端元素:

  • 按F12查看,Ctrl + Shift + C 鼠标选中数据,如图:

在这里插入图片描述

  • 发现,数据存在于表格元素里,第 1~2 行数据如下:
<tr>
	<td data-title="IP">116.231.96.146</td>
    <td data-title="PORT">8118</td>
    <td data-title="匿名度">高匿名</td>
    <td data-title="类型">HTTP</td>
    <td data-title="位置">上海市上海市  电信</td>
    <td data-title="响应速度">1秒</td>
    <td data-title="最后验证时间">2020-09-11 00:31:01</td>
</tr>
<tr>
    <td data-title="IP">117.69.153.133</td>
    <td data-title="PORT">9999</td>
    <td
  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值