Posts: 221
Threads: 71
Joined: Dec 2017
Hi All,
something is going wrong, I am not able to print matching pattern in line.
import re
import atexit
import paramiko
import time
import logging
import time
stat_time = time.time()
class myssh:
def __init__(self, host, user, password, port = 22):
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(host, port=port, username=user, password=password)
atexit.register(client.close)
self.client = client
def __call__(self, command):
stdin,stdout,stderr = self.client.exec_command(command)
sshdata = stdout.readlines()
for line in sshdata:
if 'ME:' in line:
pattern = r'(?<=\<).+?(?=\>)'
match = re.search(pattern, line,re.M|re.I)
print match.group()
remote = myssh('172.23.6.6','nms','nms')
remote('/opt/NMS/server/bin/NMSState') sample line is
ME:<PUN_Cognizant_PH3_2_XDM900> IP:<192.9.99.41> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
expected output
PUN_Cognizant_PH3_2_XDM900 192.9.99.41 UPLOADED
please support.
Posts: 4,787
Threads: 76
Joined: Jan 2018
Use print(re.findall(pattern, line, re.M | re.I)) . Why do you need the flags?
Posts: 221
Threads: 71
Joined: Dec 2017
Sorry, Gribouillis.
its still not working.
Posts: 4,787
Threads: 76
Joined: Jan 2018
(Apr-23-2018, 11:20 AM)anna Wrote: its still not working. This is not an error message sent by the python interpreter.
Posts: 221
Threads: 71
Joined: Dec 2017
suggested changes
import paramiko
import time
import logging
import time
stat_time = time.time()
class myssh:
def __init__(self, host, user, password, port = 22):
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
client.connect(host, port=port, username=user, password=password)
atexit.register(client.close)
self.client = client
def __call__(self, command):
stdin,stdout,stderr = self.client.exec_command(command)
sshdata = stdout.readlines()
list1=[]
for line in sshdata:
if 'ME:' in line:
pattern = r'(?<=\<).+?(?=\>)'
#match = re.search(pattern, line,re.M|re.I)
print(re.findall(pattern, line))
remote = myssh('172.23.6.6','nms','nms')
remote('/opt/NMS/server/bin/NMSState')
total_time=time.time()- stat_time
print('It took', time.time()- stat_time, 'seconds.') and output without error, its showing blank
Output: ('It took', 18.975914001464844, 'seconds.')
sample output from command line
Output: ME:<PUN_RanjangaonXDM-500> IP:<192.9.97.193> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4836> Full Upload:<UPLOADED>
ME:<KOL_GULMOHAR_SOLAPUR_XDM3K> IP:<192.9.73.208> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4440> Full Upload:<UPLOADED>
ME:<PUN_PARINAY_MANGAL_XDM900> IP:<192.9.37.59> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8160> Full Upload:<UPLOADED>
ME:<UNINOR_MAGARPATTA_XDM300> IP:<192.9.54.2> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~28153> Full Upload:<UPLOADED>
ME:<KOL_KOLHAPUR_SW_XDM3000> IP:<192.9.71.145> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~6588> Full Upload:<UPLOADED>
ME:<PUN_HINJEWADI_XDM900> IP:<192.9.36.112> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~5924> Full Upload:<UPLOADED>
ME:<PUN_NAGRAS_XDM900> IP:<192.9.94.29> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8864> Full Upload:<UPLOADED>
ME:<Solapur_City_Pride_BSC_XDM100> IP:<192.9.73.207> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8716> Full Upload:<UPLOADED>
ME:<NGP_XDM100-3> IP:<192.9.73.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4383> Full Upload:<UPLOADED>
ME:<PUN_Bhosari_Unitech_BSC> IP:<192.9.51.98> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~51098> Full Upload:<UPLOADED>
ME:<NGP_Selsura_XDM-100> IP:<192.9.92.90> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4619> Full Upload:<UPLOADED>
ME:<NSK_Sakri-XDM100> IP:<192.9.63.22> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~3657> Full Upload:<UPLOADED>
ME:<PUN_XDM_100_3> IP:<192.9.38.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2971> Full Upload:<UPLOADED>
ME:<NSK_Nawapur-XDM100> IP:<192.9.235.35> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2658> Full Upload:<UPLOADED>
ME:<NGP_VODAFONE_BPL_XDM100> IP:<192.9.43.40> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4366> Full Upload:<UPLOADED>
ME:<ARGB_VASANT_TEKADI_XDM300> IP:<192.9.64.138> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~7062> Full Upload:<UPLOADED>
ME:<PUN_WIPRO-XDM100> IP:<192.9.99.38> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~36110> Full Upload:<UPLOADED>
ME:<Magarpatta-T6> IP:<192.9.54.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8154> Full Upload:<UPLOADED>
ME:<NashikSwitch_3000> IP:<192.9.48.131> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8131> Full Upload:<UPLOADED>
ME:<NasikXDM-100-2> IP:<192.9.48.130> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8130> Full Upload:<UPLOADED>
ME:<TTSL_DXC_NAGPUR_XDM_100_12> IP:<192.9.242.9> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~24202> Full Upload:<UPLOADED>
ME:<NGP_Nandura_VIOM> IP:<192.9.170.3> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4667> Full Upload:<UPLOADED>
ME:<NGP_BoriTrimurti-XDM-100_viom> IP:<192.9.83.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~3984> Full Upload:<UPLOADED>
ME:<Techno_BB2> IP:<192.9.89.105> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~37134> Full Upload:<UPLOADED>
ME:<SILLOD_XDM100> IP:<192.9.63.71> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2433> Full Upload:<UPLOADED>
ME:<NGP_PULGAON-XDM100_IDEA> IP:<192.9.92.89> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4620> Full Upload:<UPLOADED>
ME:<FulambriXDM-100> IP:<192.9.63.77> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2474> Full Upload:<UPLOADED>
ME:<NGP_DEORI_XDM-100_VIOM> IP:<192.9.95.142> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4616> Full Upload:<UPLOADED>
ME:<LoniXDM> IP:<192.9.64.159> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4823> Full Upload:<UPLOADED>
ME:<GOA_TALERE_XDM-100> IP:<192.9.97.150> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~20201> Full Upload:<UPLOADED>
ME:<KOL_Tuljapur_XDM100> IP:<192.9.240.149> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4439> Full Upload:<UPLOADED>
ME:<NSK_XLOPOINT> IP:<192.9.241.66> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~62235> Full Upload:<UPLOADED>
ME:<NSK_XDM_Pimpalgaon> IP:<192.9.55.19> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4829> Full Upload:<UPLOADED>
ME:<GOA-Tristar-XDM-100-1> IP:<192.9.47.129> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~477> Full Upload:<UPLOADED>
ME:<PUN_XDM100-2NEW> IP:<192.9.40.13> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4013> Full Upload:<UPLOADED>
ME:<GOA-Karmali_station> IP:<192.9.47.29> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~1> Full Upload:<UPLOADED>
ME:<KOL_GARGOTI_XDM100> IP:<192.9.87.139> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~2065> Full Upload:<UPLOADED>
ME:<NSK_DHULE_BSC_XDM1000> IP:<192.9.236.191> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~23691> Full Upload:<UPLOADED>
ME:<NSK_EDALABAD_BSC_XDM_2000> IP:<192.9.240.87> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~150> Full Upload:<UPLOADED>
ME:<NGP_AIRTELXDM-100_> IP:<192.9.43.30> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~43113> Full Upload:<UPLOADED>
ME:<KOL_KOLHAPUR_SWITCH_XDM900_1> IP:<192.9.71.137> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~44037> Full Upload:<UPLOADED>
ME:<NGP_Chandur_Railway_XDM100_viom> IP:<192.9.92.88> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4624> Full Upload:<UPLOADED>
ME:<PUN_GOYAL_XDM900> IP:<192.9.36.135> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8942> Full Upload:<UPLOADED>
ME:<POLADPUR_XDM100> IP:<192.9.24.2> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~20197> Full Upload:<UPLOADED>
ME:<KOL_PALUS_XDM300> IP:<192.9.80.153> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8024> Full Upload:<UPLOADED>
ME:<KOL_XDM-100-2nd> IP:<192.9.71.136> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~432> Full Upload:<UPLOADED>
ME:<KOL_ASHRAY_LODGE-XDM100> IP:<192.9.237.50> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~23765> Full Upload:<UPLOADED>
ME:<NGP_XDM100_idea_IDEA> IP:<192.9.43.34> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~4367> Full Upload:<UPLOADED>
ME:<PUN_Jagdamba_XDM100> IP:<192.9.97.64> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
SN:<EMS~~LSN/EMS_XDM_93@@MultiLayerSubnetwork~~8656> Full Upload:<UPLOADED>
ME:<NGP_NAGPUR_XDM100-5_TTML> IP:<192.9.84.1> Core Upload:<UPLOADED> Full Upload:<UPLOADED>
Posts: 4,787
Threads: 76
Joined: Jan 2018
Here is what I get in a python 3 console
>>> import re
>>> line= "ME:<KOL_XDM-100-2nd> IP:<192.9.71.136> Core Upload:<UPLOADED> Full Upload:<UPLOADED>"
>>> pattern = r'(?<=\<).+?(?=\>)'
>>> print(re.findall(pattern, line))
['KOL_XDM-100-2nd', '192.9.71.136', 'UPLOADED', 'UPLOADED'] Can you print repr(line) for a few lines in order to check the data?
Posts: 221
Threads: 71
Joined: Dec 2017
re.findall is working while reading file, however its not matching when parsing data line by line.
Python 3 console is not showing error, output is blank
Posts: 4,787
Threads: 76
Joined: Jan 2018
(Apr-23-2018, 04:33 PM)anna Wrote: however its not matching when parsing data line by line. That's why it would be useful to print(repr(line))
Posts: 221
Threads: 71
Joined: Dec 2017
Gribouillis Thanks,
actual issue is command is printing incomplete data, first 1000+ line are not having 'ME:' in line, but script is coming out before that, where to implement time.sleep in this case?
Posts: 4,787
Threads: 76
Joined: Jan 2018
(Apr-24-2018, 06:52 AM)anna Wrote: where to implement time.sleep in this case? Using time.sleep() is not the solution. If the script exits, you need to understand why - Is there an exception traceback?
- Does the remote command execute successfully? Your program needs to check this.
- Does the stdout.readlines() read all the lines that you're expecting. If not, why?
- Is there anything in the command's stderr stream?
|