为什么需要代理?

我们爬取数据的时候,开始可以正常爬取,但是过了一段时间,网站可能就会提示“您的IP访问频率过高”,然后就无法正常访问网站。
这是因为网站采取了反爬策略,某个ip访问频率超过一个阈值后,就会被禁止访问。
这时候我们就可以利用代理ip,来正常访问该网站。(或者,你可以等第二天,ip恢复正常后再访问)

使用代理

首先你要获取一个代理,获取方法很多,网上有免费和付费的代理。
这里我使用的是utanshu.com。免费版单日ip上限是5000个,足够个人使用了。用手机号注册,完成职业认证和身份认证就可以使用了。(这个认证是防止滥用ip做一些违法的事情)

目前这个网站主要功能就是提供分布式代理池,后面估计其它的两个功能也会开放。

我已经申请了一个账号。登陆后选择分布式代理池,网页会有一个提取API选项,
通过网页访问该API(或requests.get(api_url))就会返回一个txt或json格式的数据。
里面包含了ip和port。

将下面代码中的代理ip、代理端口、代理账号、代理密码替换成自己的即可使用代理获取网页。

import requests
import timeurl='http://www.httpbin.org/get'
proxyaddr = "代理IP地址"    #代理IP地址
proxyport = 57114               #代理IP端口
proxyusernm = "代理帐号t"        #代理帐号
proxypasswd = "代理密码"        #代理密码
#name = input();
proxyurl="http://"+proxyusernm+":"+proxypasswd+"@"+proxyaddr+":"+"%d"%proxyportt1 = time.time()
r = requests.get(url,proxies={'http':proxyurl,'https':proxyurl},headers={"Accept":"text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8","Accept-Encoding":"gzip, deflate","Accept-Language":"zh-CN,zh;q=0.9","Cache-Control":"max-age=0","User-Agent":"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36"})
r.encoding='gb2312't2 = time.time()print(r.text)
print("时间差:" , (t2 - t1));

打印的内容包含了请求ip地址,发现该地址变成了代理ip,而不是自己的本机ip了。

Python爬虫基础-使用代理相关推荐

  1. python基础代码库-python爬虫基础教程:requests库(二)代码实例

    get请求 简单使用 import requests ''' 想要学习Python?Python学习交流群:973783996满足你的需求,资料都已经上传群文件,可以自行下载! ''' respons ...

  2. python爬虫——基础知识

    python爬虫--基础知识 一.网页基础知识 二.爬虫的思路 1.HTML文档(超文本) 三.ROBOTS协议 四.浏览器发送HTTP请求的过程 1.http请求过程 2.请求 五.SSL连接错误 ...

  3. python爬虫基础(二)

    文章目录 python爬虫 1.异步爬虫 异步爬虫之多进程and多线程(不建议使用) 异步爬虫之线程池and进程池(适当使用) 单线程+异步协程(推荐) 补充:回调函数 补充:yield 多任务异步协 ...

  4. python基础知识整理-python爬虫基础知识点整理

    首先爬虫是什么? 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 根据我的经验,要学习Python爬虫 ...

  5. python爬虫基础(一)~爬虫概念和架构

    目录 1. 爬虫 1.1 概念 1.2 分类 2. 爬虫架构 2.1 url管理器 2.2 网页(html)下载(download)器 2.2.1 urllib下载html源码 2.2.2 reque ...

  6. 掌握Python爬虫基础,仅需1小时!

    随着互联网的发展,google.百度等搜索引擎让我们获取信息愈加方便.但需求总会不断涌现,纯粹地借助百度等收集信息是远远不够的,因此编写爬虫爬取信息的重要性就越发凸显. 比如有人为了炒股,专门爬取了多 ...

  7. Day2:python爬虫基础学习(大嘘)

    Day2:python爬虫基础学习(大嘘)) 教材&参考: 学习过程 Sublime配置教程 下载&安装 语言(设置中文) 设置字体/配色 配置Python环境 使用python官方编 ...

  8. 结构化数据丨Python爬虫基础入门系列(7)

    提示:文末有福利!最新Python爬虫资料/学习指南>>戳我直达 文章目录 前言 JSON 1. json.loads() 2. json.dumps() 3. json.dump() 4 ...

  9. Python爬虫基础-如何获取网页源代码

    Python爬虫基础-如何获取网页源代码 网络爬虫(Web Crawler),又称网页蜘蛛(Web Spider),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.爬虫程序根据一组特定的规则 ...

最新文章

  1. tensorflow基于csv数据集实现多元线性回归并预测
  2. 转巧用notepad++ 批量转换ansi 和 utf8
  3. Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题
  4. 问题集锦(46-47)
  5. java print快捷键_Java的ArrayList集合使用---唐代诗人斗地主!!!
  6. typescript 怎么表示当前时间减一个月_TypeScript类型元编程:实现8位数的算术运算...
  7. win7 64 iis7+access ADODB.Connection 错误 '800a0e7a'
  8. Django视图(二)
  9. html是一种描述的沙子语言,小学低年级语文阅读训练
  10. Asp.Net完美隐藏服务器信息
  11. 了解这12个概念,让你的JavaScript水平更上一层楼
  12. 【组合数学+动态规划】在如下8*6的矩阵中,请计算从A移动到B一共有____种走法。要求每次只能向上或向右移动一格,并且不能经过P。...
  13. wget 命令下载网络文件到指定目录
  14. 如何清空c盘只剩系统_电脑C盘怎么清理到最干净?高手教你清理C盘的详细步骤...
  15. 海外问卷调查项目分为哪几种?
  16. 玻璃纤维防火毯的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  17. Amigo学习(一)解决使用中遇到的问题
  18. vue中的几个动效网站
  19. Android 按照字母排序汉字,可用于通讯录
  20. Android Widget进阶——桌面便笺程序实例的实现流程与美化设计(图)

热门文章

  1. 计算机loopback地址怎么查,loopback地址_什么是loopback地址_loopback命令
  2. 软件自动化测试平台设计,通用自动测试软件平台设计
  3. contextmenu事件
  4. 【程序】在STM32单片机上实现基于LwIP 2.1.3协议栈raw API的DHCP服务器,为其他设备分配IPv4地址(20220122版)
  5. CF464D World of Darkraft - 2(期望DP)
  6. 2022新版手机软件库游戏库下载系统源码/附教程
  7. dovecot 不用mysql_Dovecot无法执行mysql查询
  8. 双对数坐标(log-log)下“斜率”“幅值”等概念对应到线性坐标下的实际含义
  9. Stata模拟:控制变量!控制变量!Good-Controls-Bad-Controls
  10. 安卓开发黄金搭档:android-studio+Genymotion模拟器