Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3335
  • 博文数量: 20
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 210
  • 用 户 组: 普通用户
  • 注册时间: 2022-12-20 17:00
文章分类
文章存档

2023年(20)

我的朋友
最近访客

分类: Python/Ruby

2023-03-02 17:37:07

在网络爬虫的应用中,HTTP代理的使用是常见的技术手段之一。通过使用HTTP代理,爬虫可以模拟不同的访问来源,避免被目标网站识别出爬虫行为,从而提高爬虫的成功率和效率。那么,如何爬取HTTP代理呢?

1.爬取HTTP代理

我们可以使用Python中的requests和beautifulsoup库来获取并解析这些信息。具体如下:

点击(此处)折叠或打开

  1. import requests
  2. from bs4 import BeautifulSoup
  3. # HTTP代理网站的地址
  4. url = 'HTTP代理网站的地址'# 请求头信息,模拟浏览器访问
  5. headers = {
  6.     'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'
  7. }
  8. # 发送请求,获取HTML页面
  9. response = requests.get(url, headers=headers)
  10. soup = BeautifulSoup(response.text, 'html.parser')
  11. # 解析HTML页面,获取HTTP代理信息
  12. table = soup.find('table', {'id': 'ip_list'})
  13. tr_list = table.find_all('tr')
  14. for tr in tr_list[1:]:
  15.     td_list = tr.find_all('td')
  16.     ip = td_list[1].text
  17.     port = td_list[2].text
  18.     protocol = td_list[5].text.lower()
  19.     print('{}://{}:{}'.format(protocol, ip, port))

通过requests库发送请求,获取HTML页面,并使用BeautifulSoup库解析HTML页面,从而获取HTTP代理信息。解析到的HTTP代理包括IP地址、端口号和协议类型,可以根据需要进行调整和扩展。解析完成后,可以将HTTP代理存储到本地文件或数据库中,或者直接用于爬虫的访问。


2.验证HTTP代理的可用性

爬取到的HTTP代理不一定都是可用的,我们需要验证它们的可用性。我们需要验证HTTP代理是否可用。

点击(此处)折叠或打开

  1. import requests

  2. url = ""
  3. proxies = {
  4.     "http": "",
  5.     "https": "",
  6. }
  7. response = requests.get(url, proxies=proxies)
  8. print(response.status_code)


如果status_code为200,说明HTTP代理可用。


3.筛选可用的HTTP代理

验证HTTP代理的可用性后,我们可以将可用的HTTP代理存储到一个列表中,以备后续使用。



值得注意的是,网上免费爬取的HTTP代理,连通性很差,这种方法基本只适合初学者用来练习自己的技术。通常而言,个人我们可以购买付费HTTP代理服务。我们只需要购买HTTP代理厂商提供的服务,就可以直接获取到高质量的HTTP代理,只要选择了适合的厂商,HTTP代理的可用性、稳定性、质量和速度等因素就能得到保证。

以下是市面上动态短效代理HTTP代理厂商的价格,主要涉及到如下几家:

  • 青果网络
  • 芝麻代理
  • 豌豆代理
  • 品易代理
  • 讯代理
  • 小象代理
  • 巨量代理

如图所示:

HTTP代理类型

分类

代表厂商

白名单数

基础套餐

(元/月)

平均IP单价

(元/IP)

动态短效HTTP代理

按时计费

青果网络

256

29

0.0006

小象代理

5

109

0.0050

巨量代理

5

155

0.0049

豌豆代理

5

300

0.0025

讯代理

1

210

0.0583

品易代理

20

120

0.0070

芝麻代理

5

360

0.0182

按量计费

青果网络

256

30

0.0030

豌豆代理

5

200

0.0200

小象代理

5

100

0.0100

巨量代理

5

75

0.0140

品易代理

20

100

0.0100

芝麻代理

5

420

0.0420


 

不过除了单价,效果才是我们想要看的,要适合我们各自的业务场景才OK,所以还是建议大家有这方面需求的还是多测试。

阅读(96) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~