-2

大家好,我对 python 还很陌生,我需要你的帮助。

import sys, http.client

file = open('out.txt', 'w')
showlines = 50
npa = []

try:
     servername = sys.argv[1]
except:
    servername = 'localcallingguide.com' 
server = http.client.HTTPConnection(servername)

for i in range(1000):
    if i < 10:
        npa.append('00' + str(i))
    elif i >= 10 and i < 100:
        npa.append('0' + str(i))
    else:
        npa.append(str(i))

for i in range(len(npa)):
    filename = '/lca_rcdist.php?npa1=503&nxx1=745&npa2=503&nxx2=' + npa[i]
    server.putrequest('GET', filename)
    server.putheader('Accept', 'text/html')
    server.endheaders()
    reply = server.getresponse()

    if reply.status != 200:
        print('Error sending request', reply.status, reply.reason)
    else:
        data = reply.readlines()
        reply.close()
        for line in data[:showlines]:
            cLine = line.decode('utf-8')
            if '"ofrom">N<' in cLine:
                file.write('NXX ,' + npa[i])

file.close

使用上面的脚本,我得到“NXX、503、NXX、203 等的输出,我需要从输出中隐藏 NXX,知道如何在不删除脚本的 NXX 的情况下做到这一点。

谢谢是提前!

4

1 回答 1

2

如果您可以更改脚本,请执行以下操作:

file.write(',' + npa[i])

如果您无法更改此脚本,请执行以下操作:

如果您的脚本名为“example.py”,那么您可以像这样调用它:

python example.py ; sed -i s/NXX//g out.txt

NXX这将从其输出中删除。

于 2013-09-19T15:21:24.057 回答