您的位置:首页 > 新闻资讯 >文章内容
代理IP的重复度验证与格式化
来源:互联网 作者:admin 时间:2019-12-05 10:44:27

  像一些爬虫玩家,他们会将网络上面一些免费提供代理IP的网站进行抓取,将这些免费IP给提取下来使用。那么当我们抓取之后,需要对这些IP进行什么操作呢?首先就是要验证代理IP是否重复以及进行格式化处理了,下面看看是如何进行的:

代理IP的重复度验证与格式化

  验证代理ip(check_ip.py)


  1、文件查重


  写一个简单的函数用于查重,查重思路就是获取txt文件中的每一行元素,组成列表。对列表使用自带的set函数,注意:这种方法会改变列表原来的顺序。函数如下:


  from bs4 import BeautifulSoup


  import requests


  import time


  def check_repeat(path):


  """


  检查文件中每一行的内容是否重复,删除重复内容


  :param path: 文件路径


  :return:


  """


  try:


  # 读取文件


  data_list = []


  with open(path, "r") as fr:


  lines = fr.readlines()


  fr.close()


  for line in lines:


  data_list.append(line)


  new_data_list = list(set(data_list)) # 查重


  file_name = path.split("/")


  print(file_name[-1] + "文件共有 " + str(len(data_list)) + " 条数据")


  print("经过查重,现在共有 " + str(len(new_data_list)) + " 条数据")


  # 保存文件


  with open(path, "w") as f:


  for i in range(len(new_data_list)):


  f.write(new_data_list[i])


  f.close()


  print(file_name[-1] + "文件查重成功")


  except Exception as e:


  print("文件查重失败!!!")


  print(e)


  2、代理IP格式化


  网页获取的ip的格式基本为以下格式:


  5.135.66.232___8554___透明___http___法国___XXXX___XX___7.869 秒___4秒前


  220.230.120.101___8286___高匿___http___韩国___XXXX___XX___4.14 秒___11秒前


  从页面解析出来的代理ip的信息中间都是使用“—”进行隔开,为了方便直接使用,在此需要将上述的的格式转换为以下格式:


  5.135.66.232:8554


  220.230.120.101:8286


  函数如下:


  def ip_format(read_path, save_path):


  """


  将文件中的代理ip进行格式化转换,并进行查重


  :param read_path: 读取待转换的代理ip的文件路径


  :param save_path: 转换完成的代理ip的保存路径


  :return:


  """


  data_list = []


  with open(read_path, "r") as fr:


  lines = fr.readlines()


  fr.close()


  for line in lines:


  new_line = line.split("___")


  ip_format_line = new_line[0].replace(" ", "") + ":" + new_line[1] + "\n"


  data_list.append(ip_format_line)


  with open(save_path, "a") as fs:


  for i in range(len(data_list)):


  fs.write(data_list[i])


  fs.close()


  print("文件保存成功")


  fs.close()


  以上就是机灵代理带来的代理IP的查重以及格式化操作步骤介绍,大家可以按照以上方式来对免费IP进行处理使用。


相关文章内容简介
推荐阅读
  • 23 2020-12
    ip代理的选择也可以很简单

    首先,我们需要知道,用户在网络上使用代理ip是非常常见的,因为随着网络技术的发展,网站对ip的限制越来越多,网站有理由保护自己。

  • 19 2019-03
    选购IP代理,要避免这些问题

    若是大家需要使用IP代理,大家通过是怎么选择的,有木有一些技巧呢?市场上IP代理的商家鱼龙混杂,想找家好用的可不简单,有些商家的陷阱你可能不小心就中招了。

  • 26 2019-11
    代理IP是如何帮助Python使用的?

    代理IP使用在python上,能够发挥很强大的作用,不仅仅是网络爬虫,而且可以完成很多操作来提高效率。这也是为什么代理IP使用在Python上最多的原因。

  • 30 2019-04
    国内的代理IP质量怎么样?

    国内的代理IP质量怎么样?有些项目需要使用到代理IP的,如果选择使用国内的代理IP,这质量上有保障吗?

  • 06 2020-03
    更换IP地址的重要性

    IP地址是一个人上网的根本,我们在上网的时候都是通过IP地址实现的,一台电脑只能够有一个IP地址,这个地址是被固定下来的,平常我们都会使用它来上网。其实长时间使用一个IP地址是非常

  • 03 2019-06
    使用ip代理进行多账号操作

    偶尔需要使用ip代理进行多账号操作,对于ip代理的使用,如何选择呢?ip代理池其实就是一堆可以用来做代理访问的Pool,作为ServiceProvider它对外提供可用的ip代理及端口。

在线咨询
大客户经理
大客户经理
1829380381
13316264505

大客户经理微信

微信公众号

微信公众号

回到顶部