亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python基于gevent實現(xiàn)文件字符串查找器

 更新時間:2020年08月11日 11:47:48   作者:天外歸云  
這篇文章主要介紹了Python基于gevent實現(xiàn)文件字符串查找器,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1、遞歸遍歷目錄下所有文件并通過finder函數(shù)定位指定格式字符串

2、用來查找字符串的finder函數(shù)是自己定義的,這里定義了一個ip_port_finder通過正則表達式查找ip:port格式(粗匹配:數(shù)字.數(shù)字.數(shù)字.數(shù)字:數(shù)字)的字符串

3、用gevent來實現(xiàn)協(xié)程并發(fā)完成耗時任務

代碼如下:

# -*- coding: utf-8 -*-
import re
from os.path import join
from os import walk
from gevent import monkey
import gevent

monkey.patch_all()


def ip_port_finder(str: str) -> bool:
  pattern = re.compile(r".+\d+\.\d+\.\d+\.\d+:\d+")
  matchObj = pattern.match(str)
  if matchObj:
    print("------")
    print(f"發(fā)現(xiàn)目標:{matchObj.group(0)}")
    return True
  else:
    return False


def find_in_file(file_path, finder):
  with open(file_path, "r", encoding="utf-8", errors='ignore') as f:
    for (num, value) in enumerate(f):
      if finder(value):
        print(f"文件路徑:{file_path}")
        print(f"所在行數(shù):{num}")


find_in_path_recursively = lambda path, finder: gevent.joinall(
  [gevent.spawn(find_in_file, join(root, file_name), finder) for root, directories, f_names in walk(path) for
   file_name in f_names])

if __name__ == '__main__':
  path = "E:\dev_codes\xxx"
  find_in_path_recursively(path, ip_port_finder)

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 利用python為運維人員寫一個監(jiān)控腳本

    利用python為運維人員寫一個監(jiān)控腳本

    近來在學習用Python進行一些電腦運維的工作。所以下面這篇文章主要給大家介紹了關于利用python為運維人員寫一個監(jiān)控腳本的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。
    2018-03-03
  • Python RuntimeError: thread.__init__() not called解決方法

    Python RuntimeError: thread.__init__() not called解決方法

    這篇文章主要介紹了Python RuntimeError: thread.__init__() not called解決方法,需要的朋友可以參考下
    2015-04-04
  • python使用插值法畫出平滑曲線

    python使用插值法畫出平滑曲線

    這篇文章主要為大家詳細介紹了python使用插值法畫出平滑曲線,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • Python+OpenCV實現(xiàn)邊緣檢測與角點檢測詳解

    Python+OpenCV實現(xiàn)邊緣檢測與角點檢測詳解

    這篇文章主要為大家詳細介紹了如何通過Python+OpenCV實現(xiàn)邊緣檢測與角點檢測,文中的示例代碼講解詳細,對我們學習Python與OpenCV有一定的幫助,需要的可以參考一下
    2023-02-02
  • Python編程獲取終端命令行參數(shù)示例

    Python編程獲取終端命令行參數(shù)示例

    這篇文章主要為大家介紹了Python編程獲取終端命令行參數(shù)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-06-06
  • 詳解python讀取matlab數(shù)據(jù)(.mat文件)

    詳解python讀取matlab數(shù)據(jù)(.mat文件)

    本文主要介紹了python讀取matlab數(shù)據(jù),文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 詳解python變量的命名和使用

    詳解python變量的命名和使用

    變量名只能包含字母、數(shù)字和下劃線,本文主要介紹了詳解python變量的命名和使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-12-12
  • Python OS模塊實例詳解

    Python OS模塊實例詳解

    這篇文章主要介紹了Python OS模塊,結合實例形式總結分析了Python使用OS解析文件路徑、判斷文件、目錄等相關操作技巧,需要的朋友可以參考下
    2019-04-04
  • 教你使用Python建立任意層數(shù)的深度神經(jīng)網(wǎng)絡

    教你使用Python建立任意層數(shù)的深度神經(jīng)網(wǎng)絡

    這篇文章主要介紹了Python建立任意層數(shù)的深度神經(jīng)網(wǎng)絡,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • Python+Opencv實戰(zhàn)之人臉追蹤詳解

    Python+Opencv實戰(zhàn)之人臉追蹤詳解

    人臉處理是人工智能中的一個熱門話題,人臉處理可以使用計算機視覺算法從人臉中自動提取大量信息。本文將展示OpenCV Python實現(xiàn)人臉追蹤的示例代碼,需要的可以參考一下
    2021-11-11

最新評論