Python爬虫基础-使用代理
为什么需要代理?
我们爬取数据的时候,开始可以正常爬取,但是过了一段时间,网站可能就会提示“您的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爬虫基础-使用代理相关推荐
- python基础代码库-python爬虫基础教程:requests库(二)代码实例
get请求 简单使用 import requests ''' 想要学习Python?Python学习交流群:973783996满足你的需求,资料都已经上传群文件,可以自行下载! ''' respons ...
- python爬虫——基础知识
python爬虫--基础知识 一.网页基础知识 二.爬虫的思路 1.HTML文档(超文本) 三.ROBOTS协议 四.浏览器发送HTTP请求的过程 1.http请求过程 2.请求 五.SSL连接错误 ...
- python爬虫基础(二)
文章目录 python爬虫 1.异步爬虫 异步爬虫之多进程and多线程(不建议使用) 异步爬虫之线程池and进程池(适当使用) 单线程+异步协程(推荐) 补充:回调函数 补充:yield 多任务异步协 ...
- python基础知识整理-python爬虫基础知识点整理
首先爬虫是什么? 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本. 根据我的经验,要学习Python爬虫 ...
- python爬虫基础(一)~爬虫概念和架构
目录 1. 爬虫 1.1 概念 1.2 分类 2. 爬虫架构 2.1 url管理器 2.2 网页(html)下载(download)器 2.2.1 urllib下载html源码 2.2.2 reque ...
- 掌握Python爬虫基础,仅需1小时!
随着互联网的发展,google.百度等搜索引擎让我们获取信息愈加方便.但需求总会不断涌现,纯粹地借助百度等收集信息是远远不够的,因此编写爬虫爬取信息的重要性就越发凸显. 比如有人为了炒股,专门爬取了多 ...
- Day2:python爬虫基础学习(大嘘)
Day2:python爬虫基础学习(大嘘)) 教材&参考: 学习过程 Sublime配置教程 下载&安装 语言(设置中文) 设置字体/配色 配置Python环境 使用python官方编 ...
- 结构化数据丨Python爬虫基础入门系列(7)
提示:文末有福利!最新Python爬虫资料/学习指南>>戳我直达 文章目录 前言 JSON 1. json.loads() 2. json.dumps() 3. json.dump() 4 ...
- Python爬虫基础-如何获取网页源代码
Python爬虫基础-如何获取网页源代码 网络爬虫(Web Crawler),又称网页蜘蛛(Web Spider),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.爬虫程序根据一组特定的规则 ...
最新文章
- tensorflow基于csv数据集实现多元线性回归并预测
- 转巧用notepad++ 批量转换ansi 和 utf8
- Ubuntu解决Nvidia驱动缺失导致的HDMI无法输出问题
- 问题集锦(46-47)
- java print快捷键_Java的ArrayList集合使用---唐代诗人斗地主!!!
- typescript 怎么表示当前时间减一个月_TypeScript类型元编程:实现8位数的算术运算...
- win7 64 iis7+access ADODB.Connection 错误 '800a0e7a'
- Django视图(二)
- html是一种描述的沙子语言,小学低年级语文阅读训练
- Asp.Net完美隐藏服务器信息
- 了解这12个概念,让你的JavaScript水平更上一层楼
- 【组合数学+动态规划】在如下8*6的矩阵中,请计算从A移动到B一共有____种走法。要求每次只能向上或向右移动一格,并且不能经过P。...
- wget 命令下载网络文件到指定目录
- 如何清空c盘只剩系统_电脑C盘怎么清理到最干净?高手教你清理C盘的详细步骤...
- 海外问卷调查项目分为哪几种?
- 玻璃纤维防火毯的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- Amigo学习(一)解决使用中遇到的问题
- vue中的几个动效网站
- Android 按照字母排序汉字,可用于通讯录
- Android Widget进阶——桌面便笺程序实例的实现流程与美化设计(图)
热门文章
- 计算机loopback地址怎么查,loopback地址_什么是loopback地址_loopback命令
- 软件自动化测试平台设计,通用自动测试软件平台设计
- contextmenu事件
- 【程序】在STM32单片机上实现基于LwIP 2.1.3协议栈raw API的DHCP服务器,为其他设备分配IPv4地址(20220122版)
- CF464D World of Darkraft - 2(期望DP)
- 2022新版手机软件库游戏库下载系统源码/附教程
- dovecot 不用mysql_Dovecot无法执行mysql查询
- 双对数坐标(log-log)下“斜率”“幅值”等概念对应到线性坐标下的实际含义
- Stata模拟:控制变量!控制变量!Good-Controls-Bad-Controls
- 安卓开发黄金搭档:android-studio+Genymotion模拟器