I have a continuously changing text file that contains messages from the Gmail API. I need to parse the contents of it. My text file contains the id of the message, the message, sender details and the date:
15335b114b093448(message id)::NAME : SINDHUJA, SERVICE REQUIRED: PLUMBER ,CITY :BANGALORE, EMAIL ID : [email protected] , MOBILE : 9987654434:: Wed, 02 Mar 2016 04:58:29 +0000::Flipkart(partner) [email protected]:::
15335254a7e5677a::NAME : HALEN, SERVICE REQUIRED: ELECTRICIAN ,CITY :CHENNAI, EMAIL ID : [email protected] ,MOBILE : 934554434:: ::Wed, 2 Mar 2016 07:36:37 +0530 (IST)::The Times of India [email protected]::::
How do I parse it? I tried the code:
>>>rawProfiles='''
15335b114b093448::NAME : SINDHUJA,
SERVICE REQUIRED: PLUMBER ,CITY :BANGALORE, EMAIL ID : [email protected] ,MOBILE : 9987654434:: Wed, 02 Mar 2016 04:58:29 +0000::Flipkart <[email protected]>:::
15335254a7e5677a::NAME : HALEN,
SERVICE REQUIRED: ELECTRICIAN ,CITY :CHENNAI, EMAIL ID : [email protected] ,MOBILE : 934554434:: ::Wed, 2 Mar 2016 07:36:37 +0530 (IST)::The Times of India <[email protected]>::::
'''
>>>profilesList=re.split(r'\n{1,}',rawProfiles)
>>>profilesList =[re.sub(r'\n',' ',profile) for profile in profilesList]
>>>profilesList =[re.split(r',',profile,maxsplit=2) for profile in profilesList]
>>>for profile in profilesList:
print profile
>>>profilesList =[map(str.strip,profile) for profile in profilesList]
>>>for profile in profilesList:
print profile
This gave me a: nameError re not defined.
EDIT
The code is in python.
My sample output should be :
PARTNER NAME SERVICE CITY MOBILE EMAIL
Flipkart SINDHUJA PLUMBER BANGALORE 9987654434 [email protected]
Times HALEN ELECTRICIAN CHENNAI 9345544342 [email protected]