当前位置:首页 > CN2资讯 > 正文内容

西刺代理有效高匿代理爬取demo西刺代理官网

10小时前CN2资讯


1. 爬取西刺代理网站的国内高匿代理的IP地址和端口

2. 使用随机用户代理生成器

高匿代理:服务器只能发现代理的地址,但是发现不了你真实的IP地址

起始网页:https:///nn/1

# -*- coding: utf-8 -*-

# 1. 爬取西刺代理网站的国内高匿代理的IP地址和端口
# 2. 使用随机用户代理生成器
# 3. 如何使用获取的高匿代理
# 高匿代理:服务器只能发现代理的地址,但是发现不了你真实的IP地址
# 起始网页:https:///nn/1

import requests
from lxml import etree
import user_agent


def crawl_xicidaili():
# 用于存储有效IP地址的空列表
global ip_list
ip_list = []
# 爬取20页的代理IP地址
for i in range(1, 20):
start_url = 'https:///nn/{}'.format(i)
# 随机生成用户代理,每次请求都会变化
user_agents = user_agent.generate_user_agent()
headers = {
'User-Agent': user_agents
}
# 请求获取网页,指定网页源码相同的编码格式
res = requests.get(url=start_url, headers=headers)
res.encoding = 'utf-8'
# 将网页源码str格式转换成xpath支持的html格式
# 转换之后html类型:<class 'lxml.etree._Element'>
html = etree.HTML(res.text, etree.HTMLParser())
# 提取IP地址和端口所在的所有标签
# 使用火狐浏览器,查看元素,右键复制table标签所在的xpath路径
addresses = html.xpath("//table[@id='ip_list']//tr")
# 循环上面得到的所有标签,注意tr[1]是栏目栏,tr[2]开始才是IP地址栏
# 遍历每个IP标签,提取有效的IP最后添加到ip_list中
for address in addresses[1:]:
# 再次确认判断一下地址是否为高匿地址:
if address.xpath("./td[5]/text()")[0] == "高匿":
ip_address = address.xpath("./td[2]/text()")[0]
ip_port = address.xpath("./td[3]/text()")[0]
ip_proxy = ip_address + ":" + ip_port

# 验证IP地址是否可以正常使用,使用代理请求是否成功
test_url = "https://www.hao123.com/"
# 设置代理地址参数,# 使用IP代理格式类似:'http://127.0.0.1:8118'
# 使用的字典的键值形式设置IP代理
proxies = {
'http': 'http://' + ip_proxy,
'https': 'https://' + ip_proxy,
}
# 代理的格式:
'''
proxies = {
"http": "http://10.10.1.10:3128",
"https": "http://10.10.1.10:1080",
}
'''
# 使用代理IP请求百度首页,加入代理和超时参数,代理无效打印语句
# requests代理使用参考:https://2.python-requests.org/zh_CN/latest/user/advanced.html?highlight=%E4%BB%A3%E7%90%86#proxies
try:
res = requests.get(url=test_url, headers=headers, proxies=proxies, timeout=1)
if res.status_code == 200:
print("该IP地址有效:", ip_proxy)
ip_list.append(ip_proxy)
# 将可用的IP写入文件
with open('ip_proxy_xici.txt', mode='a+', encoding='utf-8') as f:
f.write(ip_proxy + "\n")
except Exception:
print("该IP地址已失效:", ip_proxy, Exception)

if __name__ == '__main__':
crawl_xicidaili()
print(ip_list)


    你可能想看:

    扫描二维码推送至手机访问。

    版权声明:本文由皇冠云发布,如需转载请注明出处。

    本文链接:https://www.idchg.com/info/24764.html

    分享给朋友:

    “西刺代理有效高匿代理爬取demo西刺代理官网” 的相关文章

    专业网站被墙检测工具及应对措施攻略

    网站被墙检测工具概述 网络环境的日益复杂,使得网站被墙的问题变得越来越普遍。这种封锁不仅影响了网站的访问量,还可能损害企业的形象和信誉。了解网站被墙的定义及其影响,是我们拥有更好网络体验的基础。 网站被墙,简单来说,指的是某些网站因各种政策或技术原因,无法在特定地区被访问的现象。这种情况会导致用户无...

    选择合适的域名注册商,轻松完成域名注册流程

    在如今数字化的时代,域名注册变得越来越重要。它不仅是建立个人或企业在线身份的第一步,也是一种品牌保护和业务推广的手段。在互联网上,域名就像是你的地址,方便别人找到你。因此,选择一个合适的域名注册商显得尤为重要。 域名注册商,是那些提供域名注册、管理和支持服务的公司。可以想象成他们是光明正大的中介,帮...

    Vultr Cloud Computer与High Frequency服务器的全面对比

    在云服务的世界中,Vultr无疑是一个备受瞩目的名字。它提供两种主要的云服务器类型:Vultr Cloud Compute和High Frequency服务器。这两种服务器各有其独特之处,适合不同类型的用户和使用场景。 首先,Vultr Cloud Compute是其最基础的产品,主要以高性价比为卖...

    50kvm VPS主机服务:最优性价比与便捷选择

    50kvm是一个备受推崇的VPS主机服务品牌,它因其卓越的性价比和高效的速度而广受欢迎。这个品牌提供多种不同 유형的VPS解决方案,覆盖了从美国到亚洲的多个数据中心。特别是美国波特兰的Cera (NCP)和洛杉矶C3、Cera CN2 GIA等产品,都是非常值得关注的选择。 在我了解50kvm的过程...

    BBR加速开启:提升网络性能的最佳实践

    什么是BBR? 在网络领域,BBR(Bottleneck Bandwidth and Round-trip propagation time)是一个备受关注的TCP拥塞控制算法,由Google开发的这一技术,旨在提升网络连接的传输速率和稳定性。BBR独特之处在于,它通过实时监测数据包的传输时延与丢包...

    Linode测速:优化云服务器性能与用户体验的全面指南

    Linode概述 Linode是一家以云计算服务而闻名的公司,提供虚拟私人服务器(VPS)以及一系列相关的云服务。对于那些追求灵活、高性能解决方案的用户,Linode无疑是一种不错的选择。你只需在Linode官网注册账户,便可以获得100美元的赠送额度,轻松体验其各项服务。这种简单快捷的注册过程让许...