我们在做爬虫的过程中经常会遇到这样的情况:最初爬虫正常运行,正常抓取数据,一切看起来都是那么的美好,然而一杯茶的功夫可能就会出现错误,比如403 Forbidden;出现这样的原因往往是网站采取了一些反爬虫的措施,比如,服务器会检测某个IP在单位时间内的请求次数,如果超过了某个阈值,那么服务器会直接拒绝服务,返回一些错误信息。这时候,代理就派上用场了。

国内的免费代理网站:

西刺代理

快代理免费代理

全网代理ip

接下来看如何设置代理:

urllib代理设置:

from urllib.error import URLError
from urllib.request import ProxyHandler,build_opener proxy='123.58.10.36:8080' #使用本地代理
#proxy='username:password@123.58.10.36:8080' #购买代理
proxy_handler=ProxyHandler({
'http':'http://'+proxy,
'https':'https://'+proxy
})
opener=build_opener(proxy_handler)
try:
response=opener.open('http://httpbin.org/get') #测试ip的网址
print(response.read().decode('utf-8'))
except URLError as e:
print(e.reason)

运行结果如下:

requests代理设置:

import requests

proxy='123.58.10.36:8080'  #本地代理
#proxy='username:password@123.58.10.36:8080'
proxies={
'http':'http://'+proxy,
'https':'https://'+proxy
}
try:
response=requests.get('http://httpbin.org/get',proxies=proxies)
print(response.text)
except requests.exceptions.ConnectionError as e:
print('错误:',e.args)

运行结果如下:

Selenium代理设置:

from selenium import webdriver

proxy='123.58.10.36:8080'
chrome_options=webdriver.ChromeOptions()
chrome_options.add_argument('--proxy-server=http://'+proxy)
browser=webdriver.Chrome(chrome_options=chrome_options)
browser.get('http://httpbin.org/get')

运行结果:

以上就是代理的一些简单设置、、、

最新文章

  1. 轮播插件unsilder 源码解析(二)
  2. url和urn和uri
  3. ruby 2.2
  4. nf_conntrack被启用导致服务故障
  5. struts2-ajax-jQuery
  6. 【规律】【贪心】【数学】HDU 5573 Binary Tree
  7. CentOS安装MySQL问题汇总
  8. (译)AngularJS1.3.0 开发者指南(四) -- 控制器
  9. MySQL高可用方案MHA自动Failover与手动Failover的实践及原理
  10. PHP程序中的文件锁、互斥锁、读写锁使用技巧解析
  11. Oracle查看对象空间使用情况show_space
  12. java 学习第二天小练习
  13. 《java入门第一季》之好玩的正则表达式
  14. 好程序员分享居中一个float元素
  15. 有了这8款Mac安全杀毒和流氓防护软件,让你的mac清理优化,更加安全
  16. vs2012碰到生成时报该错误:项目中不存在目标“GatherAllFilesToPublish”
  17. JsTree使用一例
  18. streaming简介
  19. win10 + Ubuntu 双系统,重装后的引导修复,时间调整和启动项调整
  20. 游戏服务器框架:Leaf/go

热门文章

  1. 配置Sharepoint之后。外网无法访问的问题
  2. [翻译] ABCIntroView
  3. netstat 常用方法
  4. 6 Dockerfile指令详解 && ENTRYPOINT 指令
  5. 【解决方案】[XCUITest] WDA is not listening at 'http://localhost:8100/'
  6. 软工团队 - 预则立&&他山之石
  7. jquery.form.js(ajax表单提交)
  8. eclipse 自动生成get/set方法
  9. IPUtils 工具类
  10. 【[SDOI2017]序列计数】