您的位置:首页 > 新闻资讯 >文章内容
代理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进行处理使用。


相关文章内容简介
推荐阅读
  • 25 2019-03
    如何利用免费IP代理池刷量

    刷量,大家也不少见了,像视频播放量,文章阅读量,商品销售量等等,这些其实都是可以刷出来的,这么看来是不是刷量蛮简单的,想刷就刷。

  • 19 2019-06
    代理IP对电商的用途还是蛮大的

    代理IP对电商的用途还是蛮大的,只是很多人没有掌握技巧而已,今天就跟小编一起去看看:对于代理IP这个词,我想大多数搞电商的初代电商人或许是有一些熟悉的,他可是初代第三行人成立

  • 05 2019-05
    急需高质量的HTTP代理IP来救场

    急需高质量的HTTP代理IP来救场,有没有什么好的推荐呢?大家都知道,现在是大数据高速发展时代,爬虫行业日益火爆,从业者如过江之鲫,数不胜数,说到爬虫就不得不提另外一个词:代理IP

  • 16 2019-02
    哪家代理的动态IP资源量多?

    很多场景需要使用到代理,尤其是爬虫采集项目,采集规模越大所需要的动态IP资源也就越多,那么这IP资源如何获取到呢?

  • 08 2020-01
    代理ip​对于爬虫十分重要!

    代理ip​对于爬虫十分重要!作为爬虫工作者来说,反爬虫策略是最大的敌人,为了应对反爬虫策略,各位大神都开发出了无数的应对方法,然而这么多的方法都无一例外需要用到代理IP。

  • 02 2019-09
    Python爬虫技巧:伪装浏览器访问User-Agent

    爬虫工作者在用代理IP开展爬虫业务的时候,尽管IP代理可以尽可能达到IP不被检测异常被封,但是由于爬虫是需要反复多次的操作,那么这个过程就会触发网站的反爬虫机制,所以有些时候,我

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

大客户经理微信

微信公众号

微信公众号

回到顶部