换ip软件,代理ip软件,更改ip地址-智游代理
首页 IP软件套餐 HTTP代理套餐 API提取 使用帮助 新闻资讯 长效IP 注册 登录 实名验证

在线咨询

800819380 售前客服
在线客服,实时响应

客户经理:
13326404693

473197630 QQ群
473197630

微信客服

您的位置: 首页 > 新闻资讯 > 爬虫代理 > 正文

python怎么设置代理ip

发布时间:2018年11月19日 来源:智游代理 www.zhiyoudaili.com

现如今爬虫行业正在如火如荼的发展,在使用爬虫的时候,经常会遇见所要爬取的网站采取了反爬取技术,高强度,高效率的爬取网页信息常常会给网站服务器带来巨大压力,所以同一个IP反复爬取同一个网页,就很可能被封,这里讲述一个爬虫技巧,就是python怎么设置代理IP。


首先来看一下配置环境:安装requests库;安装bs4库;安装lxml库,接下来直接进入代码展示:

  from bs4 import BeautifulSoup

  import requests

  import random

  def get_ip_list(url, headers):

  web_data = requests.get(url, headers=headers)

  soup = BeautifulSoup(web_data.text, 'lxml')

  ips = soup.find_all('tr')

  ip_list = []

  for i in range(1, len(ips)):

  ip_info = ips[i]

  tds = ip_info.find_all('td')

  ip_list.append(tds[1].text + ':' + tds[2].text)

  return ip_list

  def get_random_ip(ip_list):

  proxy_list = []

  for ip in ip_list:

  proxy_list.append('http://' + ip)

  proxy_ip = random.choice(proxy_list)

  proxies = {'http': proxy_ip}

  return proxies

  if __name__ == '__main__':

  url = 'http://www.xicidaili.com/nn/'

  headers = {

  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36'

  }

  ip_list = get_ip_list(url, headers=headers)

  proxies = get_random_ip(ip_list)

  print(proxies)

  代理IP的使用:运行上面的代码会得到一个随机的proxies,把它直接传入requests的get方法中即可。

web_data = requests.get(url, headers=headers, proxies=proxies)


这个就是小编带来的分享了,程序员大牛可以试试效果哦。


转载注明来自:智游代理IP http://www.zhiyoudaili.com/

相关文章内容简介

1 爬虫使用不同的IP代理为什么效果不一样

我们爬虫在选择IP代理的时候,会发现有特别多的不同的IP提供商,价格差异也很大,从几块钱一天不限量的到几千块钱一天的都有,而且都说自己IP质量很好,都是高匿IP,但是实际使用起来,却发现IP可用率、连通速度都大相径庭,IP代理质量相同怎么效果不同?有些用户反映,在使用IP代理的过程中有时候会遇到这样的情况,即使用同样质量的一批不同的IP代理加上相同的策略访问同一个网站,有的成功有的失败,这是为什么呢?当下很多IP代理池,如果没有特殊注明为独享IP池,都是共享IP池。免费IP代理是最大的共享IP池,面向整个网络用户共享,收费IP代理则是面向自家的付费用户(超低价的普通代理和开放代理等除外,它们本质上还是网上收集的免费IP代理)。既然是共享IP代理池,那么不可避免的就会有冲突发生,会有部分用户使用相同的部分IP访问相同的网站。所以,在使用IP代理访问网站的过程中,会发现有一小部分才刚开始使用,就被反爬策略识别了。那么有什么好的解决办法呢?一是选择购买IP池大的共享IP池,IP池越大,项目冲突的几率就越小;比如智游代理的独享IP池,避免一个IP同时多个... [阅读全文]

2 Python爬虫通过ip代理抓取网页

如果大家在采集网站信息的时候,特别频繁的来访问,非常容易被目标网站检测到从而进行屏蔽,解决这类情况的一种有效的方法就是使用代理IP,当我们连上网络上网的时候,电脑会被分配一个IP,提供给我们使用,如果我们频繁访问一个网站时,这个网站也会因为发现同一个ip地址访问多次而进行屏蔽的,这个时候更换IP地址访问是最好的解决方式,多个ip地址进行随机地轮流访问,减少被该网站检测到的概率。假如我们再使用多个不同的headers请求头,这样就会有多个ip+主机的组合,浏览时被发现的机率又更加降低了。关于代码中ip代理的使用,下面介绍一下:步骤:1、urllib2库中的ProxyHandler类,通过此类可以使用ip代理访问网页proxy_support=urllib2.ProxyHandler({}),其中参数是一个字典{‘类型':'代理ip:端口号'}2、定制、创建一个openeropener=urllib2.build_opener(proxy_support)3、(1)安装openerurlib2.install_opener(o... [阅读全文]

热门标签

推荐阅读

  1. 14

    2018-11

    python怎么验证http代理ip

    社会科技在不断的进步,互联网行业发展迅速,有很多朋友不断加入互联网大军,今天我们来说一下互联网大军中的爬虫工作。

  2. 13

    2019-08

    代理工程师告诉你分布式爬虫有什么优点

    爬虫抓取数据大家已经都不陌生,随着技术的发展及抓取数据量的增大,分布式爬虫走进了我们的工作。分布式爬虫就是可以让一个爬虫程序发到多台电脑上。分布式爬虫主要的优点就是提高工

  3. 27

    2018-11

    python 怎样设置http代理

    HTTP代理大家应该听说过很多遍了,小编前面的文章中介绍了很多相关的知识,今天给大家介绍一下在python程序中要如何设置HTTP代理,请看下面的介绍。

  4. 15

    2019-02

    网络蜘蛛安全隐患 web如何应对有害爬虫

    网络爬虫(Web Crawler),又称网络蜘蛛(Web Spider)或网络机器人(Web Robot),是一种按照一定的规则自动抓取万维网资源的程序或者脚本,已被广泛应用于互联网领域。

  5. 16

    2019-09

    解决多个爬虫代理IP的方案

    网络数据量越来越大,从网页中获取信息变得越来越困难,如何有效地抓取并利用信息,已成为网络爬虫一个巨大的挑战。网络中出售代理IP资源的渠道很多,总体来讲,质量好的都不便宜,便

  6. 29

    2019-01

    新手学习python的方法

    ​Python是一门语法简洁、功能强大、上手简单的计算机编程语言,根据TIOBE最新排名,Python已超越C#,与Java,C,C++成为全球4大流行语言之一。