1

これがスクリプトです。印刷行 (太字) を変更しようとしています。

reverseNames() は IPy モジュールからのものです。この例で実装する方法がわかりません。

print addy.reverseNames() % (addy)

#!/usr/bin/env python
import sys
import re

try:
    if sys.argv[1:]:
        print "File: %s" % (sys.argv[1])
        logfile = sys.argv[1]
    else:
        logfile = raw_input("Please enter a log file to parse, e.g /var/log/secure: ")
    try:
        file = open(logfile, "r")
        ips = []
        for text in file.readlines():
           text = text.rstrip()
           regex = re.findall(r'(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})\.(?:[\d]{1,3})$',text)
           if regex is not None and regex not in ips:
               ips.append(regex)

        for ip in ips:
           outfile = open("/tmp/blocked_ips_test", "a")
           addy = "".join(ip)
           if addy is not '':
              **print "IP: %s" % (addy)**
              outfile.write(addy)
              outfile.write("\n")
    finally:
        file.close()
        outfile.close()
except IOError, (errno, strerror):
        print "I/O Error(%s) : %s" % (errno, strerror)
4

3 に答える 3

2

必要に応じて、 Occupy libraries IPY を使用できます。

import IPy
i = IP('.'.join(ip))
addy = i.reverseNames()

これは、ライブラリのインストールに役立ちます https://github.com/autocracy/python-ipy/wiki

それどころか

addy = ".".join(reversed(ip.split('.'))) +'.in-addr.arpa'
于 2015-07-06T13:54:55.670 に答える