首页 > 其他分享 >最详细爬虫零基础教程08——代理IP

最详细爬虫零基础教程08——代理IP

时间:2024-03-23 09:29:05浏览次数:26  
标签:IP 08 代理 基础教程 ip print requests proxies

文章目录


一、代理IP

在Python中使用代理IP进行爬虫是一种常见的技术手段,可以在一定程度上解决被网站限制访问的问题。

为什么要使用代理IP
1.让服务器以为不是同一个客户端在请求
2.防止我们的真实IP被泄露被追究

使用场景:
1.被封禁IP之后
2.被反爬之后

代理IP分类:
1.透明代理:毫无作用,服务器可以简单的检测到你使用了代理IP,并且知道你的真实IP
2.匿名代理:检测不到真实的IP
3.高匿代理:两种IP都无法检测到,一般用到IP代理的情况都会选择高匿代理,前两种的实用性太低,不推荐使用,只作为了解。

二、使用步骤

import requests

# 设置代理IP
proxies = {
    'http': 'http://127.0.0.1:8888',  # HTTP代理IP
    'https': 'https://127.0.0.1:8888',  # HTTPS代理IP
}

# 使用代理IP发送请求
response = requests.get('http://www.example.com', proxies=proxies)

# 处理响应结果
print(response.text)

在上述代码中,我们通过创建一个proxies字典来设置代理IP,然后将该字典作为参数传递给requests.get()方法的proxies参数。这样就可以通过代理IP发送请求并得到响应结果。

需要注意的是,在实际使用时,需要替换http://127.0.0.1:8888和https://127.0.0.1:8888为真实的代理IP地址和端口号。另外,还需要确保代理IP可用且不被目标网站封禁。

三、小案例

检测代理IP是否可以使用:代理IP的筛选

import requests
import random


if __name__ == '__main__':
    ip_list = ['117.92.245.47:40033', '222.90.142.103:40033', '42.87.183.220.40033']
    ip = random.choice(ip_list)
    print('提取到的代理ip地址', ip)
    while True:
        try:
            url_ = 'https://myip.ipip.net/'
            headers_ = {
                'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36'
            }
            proxies_ = {
                'https': f'http://{ip}'  # 假的代理IP,无法使用,花钱购买的代理的IP也不是100%无法使用
            }
            response_ = requests.get(url_,headers=headers_, params=proxies_,timeout=2)
            # response_ = requests.get(url_,headers=headers_)
            print(response_.status_code)
            print('目标网站检测到的代理IP:',response_.text)
            print('代理ip使用成功!')
            break
        except:
            print('代理IP使用异常,需要重新选择代理IP')

总结

在我们平常的使用中一般很少的情况会用到代理IP,如果要用到的话,只能去一些比较可以信任的网站上进行购买,这里就不过多介绍了。

你可以一无所有,但绝不能一无是处。

标签:IP,08,代理,基础教程,ip,print,requests,proxies
From: https://blog.csdn.net/ZxVSaccount/article/details/136885274

相关文章

  • 深入了解与全面解析华为认证(HCIA/HCIP/HCIE)
    一、网络行业技术认证网络行业对于技术评定一般分为两种,一种是企业认证,一种是国家认证企业认证属于技术认证,在国内的互联网企业都会承认,用于评定一个人的技术等级或者企业招投标的资质。网络行业认证最好的有三种,又分别有三种不同等级及多种方向,分别为:华为、思科、H3C(华三......
  • 深入了解与全面解析华为认证(HCIA/HCIP/HCIE)
    一、网络行业技术认证网络行业对于技术评定一般分为两种,一种是企业认证,一种是国家认证企业认证属于技术认证,在国内的互联网企业都会承认,用于评定一个人的技术等级或者企业招投标的资质。网络行业认证最好的有三种,又分别有三种不同等级及多种方向,分别为:华为、思科、H3C(华三......
  • 洛谷题单指南-集合-P1525 [NOIP2010 提高组] 关押罪犯
    原题链接:https://www.luogu.com.cn/problem/P1525题意解读:有很多罪犯,要关到两座监狱,有一些罪犯之间有仇,并且可以量化出仇恨值,如果关在一起就会冲突,造成的影响就是仇恨值,要使得造成的影响最小,如果可以完全不起冲突,输出0。解题思路:首先,要让冲突影响最小化,显然应该把仇恨大的罪犯......
  • P1075 [NOIP2012 普及组] 质因数分解
    P1075[NOIP2012普及组]质因数分解[NOIP2012普及组]质因数分解题目描述已知正整数\(n\)是两个不同的质数的乘积,试求出两者中较大的那个质数。输入格式输入一个正整数\(n\)。输出格式输出一个正整数\(p\),即较大的那个质数。样例#1样例输入#121样例输出#1......
  • Python解压当天创建的ZIP文件到指定的文件夹中
    1.首先,导入了需要使用的模块:-`zipfile`:用于处理ZIP文件的模块。-`os`:提供了与操作系统交互的功能。-`shutil`:用于高级文件操作,例如移动文件等。-`datetime`:用于处理日期和时间的模块。2.定义了一个函数`unzip_todays_files(zip_files_folder,extract_folder)`......
  • P1055 [NOIP2008 普及组] ISBN 号码
    P1055[NOIP2008普及组]ISBN号码[NOIP2008普及组]ISBN号码题目描述每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括\(9\)位数字、\(1\)位识别码和\(3\)位分隔符,其规定格式如x-xxx-xxxxx-x,其中符号-就是分隔符(键盘上的减号),最后一位是识别码,例如0-6......
  • 【C++ 08】vector 顺序表的常见基本操作
    文章目录前言......
  • 前端实现用户名密码国家注册(Eclipse Jee软件)
    <!DOCTYPEhtml><html><head><metacharset="UTF-8"><scriptsrc="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script><title>注册页面</title></head><body> <lab......
  • 2种包管理工具:pip和pipenv
    一、pippip 是Python的包安装器,它用于安装和管理Python包,它通过requirements.txt文件来管理项目所依赖的包1、生成requirements.txt文件:pipfreeze>requirements.txt2、安装requirements.txt依赖:pipinstall-rrequirements.txt3、激活虚拟环境:sourcemyenv/bin/activ......
  • P1308 [NOIP2011 普及组] 统计单词数
    P1308[NOIP2011普及组]统计单词数[NOIP2011普及组]统计单词数题目描述一般的文本编辑器都有查找单词的功能,该功能可以快速定位特定单词在文章中的位置,有的还能统计出特定单词在文章中出现的次数。现在,请你编程实现这一功能,具体要求是:给定一个单词,请你输出它在给定的文......