使用HTTP代理

原理:
HTTP代理服务器可以比作客户端与Web服务器之间的一个信息中转站,客户端发送的HTTP请求和Web服务器返回的HTTP响应通过代理服务器转发给对方,如下图所示:

在这里插入图片描述

爬虫程序在爬取某些网站时也需要使用代理,例如:

  • 由于网络环境因素,直接爬取速度太慢,使用代理提高爬取速度。
  • 某些网站对用户的访问速度进行限制,爬取过快会被封禁ip,使用代理防止被封禁,多线程爬取。
  • 由于地方法律或政治原因,某些网站无法直接访问,使用代理绕过访问限制。

利用网站 http://httpbin.org 提供的服务可以窥视我们所发送的HTTP(S)请求,如请求源IP地址、请求头部、Cookie信息等。

import requests

response = requests.get("http://www.onefine.top/ip")
print(response.text)

输出:
{"origin":"116.53.31.209"}

使用代理:

import requests

proxy = {
    'http': '221.132.18.38:80'
}

response = requests.get("http://www.onefine.top/ip", proxies=proxy)
print(response.text)

输出:
{"origin":"221.132.18.38"}

posted @ 2019-02-23 09:19  onefine  阅读(749)  评论(0编辑  收藏  举报