1.什么是代理?

​ 代理:将网络请求发送给代理服务器,通过代理服务器做中介,将请求转发给目标服务器并将响应返回,从而完成网络通信。

2.为什么使用代理?

​ 使用爬虫抓取批量资源时,在短时间内会对服务器发起高频请求,服务器会判定这些高频请求不是“普通访客”发起的,从而拒绝该IP的发起的请求,但是我们可以更换IP(使用代理IP)继续进行访问

3.代理的基础知识
  • ​ 代理的类型:http和https 根据要访问网页使用的协议类型进行选择
  • ​ 匿名度:分为透明、匿名和高匿

​ 透明:服务器知道使用了代理,而且知道真实的IP

​ 匿名:服务器知道使用了代理,而且但不知道真实的IP

​ 高匿:服务器不知道使用了代理,更不知道真实的IP

4.requests中的proxies参数
import requests
import random
requests.get(url = target_url,proxies = {'http':''163.125.114.117:8118''},headers =...)
#防止IP被禁,可以使用代理池
ht_proxy = [
{'http':'163.125.114.117:8118'},
{'http':'183.129.244.16:11063'},
{'http':':219.159.38.199:56210'}]
hts_proxy = [
{'https':'163.125.114.117:8118'},
{'https':'183.129.244.16:11063'},
{'https':':219.159.38.199:56210'}]
#使用User-Agent进行伪装
header_list = [
{ # 谷歌
"user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_0) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11"},
# 火狐
{"user-agent": "Mozilla/5.0 (Windows NT 6.1; rv:2.0.1) Gecko/20100101 Firefox/4.0.1"},
# 遨游
{"user-agent": "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Maxthon 2.0)"},
]
requests.get(url = target_url,proxies = random.choice(ht_proxy),
headers = random.choice(header_list))

#还可使用随机生成user-agent的第三方库(先安装)
from fake_useragent import UserAgent
ua = UserAgent().random
headers = {
'User-Agent':ua
} #随机产生UA,如果报错则可以添加如下参数:
#ua = UserAgent(verify_ssl=False,use_cache_server=False).random #禁用服务器缓存:
#ua = UserAgent(use_cache_server=False)
#不缓存数据:
#ua = UserAgent(cache=False)
#忽略ssl验证:
#ua = UserAgent(verify_ssl=False)

基于requests模块的代理的更多相关文章

  1. 基于requests模块的cookie,session和线程池爬取

    目录 基于requests模块的cookie,session和线程池爬取 基于requests模块的cookie操作 基于requests模块的代理操作 基于multiprocessing.dummy ...

  2. python 爬虫 基于requests模块发起ajax的post请求

    基于requests模块发起ajax的post请求 需求:爬取肯德基餐厅查询http://www.kfc.com.cn/kfccda/index.aspx中指定某个城市地点的餐厅数据 点击肯德基餐厅查 ...

  3. python 爬虫 基于requests模块发起ajax的get请求

    基于requests模块发起ajax的get请求 需求:爬取豆瓣电影分类排行榜 https://movie.douban.com/中的电影详情数据 用抓包工具捉取 使用ajax加载页面的请求 鼠标往下 ...

  4. requests 模块使用代理

    正向代理与反向代理的区别 反向代理: 服务器端知道代理的存在,反向代理是为了保护服务器或负责负载均衡 但是客户端不知道代理的存在的 正向代理: 客户端知道代理的存在,正向代理是为保护客户端,防止追究责 ...

  5. python 爬虫 基于requests模块的get请求

    需求:爬取搜狗首页的页面数据 import requests # 1.指定url url = 'https://www.sogou.com/' # 2.发起get请求:get方法会返回请求成功的响应对 ...

  6. python基础===基于requests模块上的协程【trip】

    今天看博客get了一个有趣的模块,叫做 trip     #(pip install  trip) 兼容2.7版本 基于两大依赖包:TRIP: Tornado & Requests In Pa ...

  7. requests模块使用代理

    1.创建try_proxies.py文件import requestsproxies = {"http":"http:117.135.34.6:8060"}he ...

  8. requests模块处理cookie,代理ip,基于线程池数据爬取

    引入 有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不到我们想要的目的. 一.基于requests模块 ...

  9. requests模块的cookie和代理操作

    一.基于requests模块的cookie操作 引言:有些时候,我们在使用爬虫程序去爬取一些用户相关信息的数据(爬取张三“人人网”个人主页数据)时,如果使用之前requests模块常规操作时,往往达不 ...

随机推荐

  1. 模板 - 数据结构 - Treap

    还有人把Treap叫做树堆的,但是常用名还是叫做Treap的比较多. 不进行任何封装的,带求和操作的,一个节点存放多个元素的最普通的Treap. #include<bits/stdc++.h&g ...

  2. Spring Cloud Gateway(六):路由谓词工厂 RoutePredicateFactory

    本文基于 spring cloud gateway 2.0.1 1.简介 Spring Cloud Gateway 创建 Route 对象时, 使用 RoutePredicateFactory 创建 ...

  3. cas系列-自定义异常提示(五)

    cas对于异常提示可以支持多语言,默认是英语,具体文件格式大同小异.这里以cas5.x版本为例. 官方推荐使用overlay方式部署,这样你只需要关注你自定义的配置即可. 获取自定义配置文件方式: 执 ...

  4. WPF中打开网页的两种方法

    1.浏览器打开 Process proc = new System.Diagnostics.Process(); proc.StartInfo.FileName = "http://www. ...

  5. Tkinter 之MessageBox弹出框

    一.参数说明 语法 作用 截图 tk.messagebox.showwarning(title='提示', message='你确定要删除吗?') 警告信息弹窗   tk.messagebox.sho ...

  6. C语言中的多线程

    原文:https://www.cnblogs.com/yorkyang/p/7804733.html 线程的优点: 减少系统调度开销,不占有独立的资源,切换速度快,执行效率高. 线程间通信方便,可共享 ...

  7. 解决vim升级后导致的高亮行行好有下划线问题,

    在自己的guodersert.vim中添加下面一行即可 hi CursorLineNr term=bold cterm=NONE ctermfg=darkgreen gui=bold guifg=Ye ...

  8. Deep & Cross Network总结

    一.介绍 CTR预估全称是Click Through Rate,就是展示给用户的广告或者商品,估计用户点击的概率.公司规模较大的时候,CTR直接影响的价值在数十亿美元的级别.广告支付一个非常流行的模型 ...

  9. socket.io 消息发送

    socket.io学习笔记 1.服务器信息传输: 2.不分组,数据传输: 3.分组数据传输: 4.Socket.io难点大放送(暂时没有搞定): 服务器信息传输 1. // 发送到当前请求套接字客户端 ...

  10. UML部署图介绍

    https://www.w3cschool.cn/uml_tutorial/uml_tutorial-mi5w28ur.html