Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python3
- import sys, re
- regex = re.compile(r"TEL;TYPE=([0-9A-Za-z-]+).*,pref:(.*)$")
- for fn in sys.argv[1:]:
- fnc = fn[:-4] + "_converted.vcf"
- with open(fn, "rt") as f, open(fnc, "wt") as g:
- print("BEGIN:VCARD", file=g)
- print("VERSION:2.1", file=g)
- for line in f:
- line = line.rstrip()
- email_found = False
- if line.startswith("N:"):
- first_semi = line.index(";")
- second_semi = line[first_semi+1:].index(";")
- out = line[:first_semi+1+second_semi]
- print(out, file=g)
- elif line.startswith("BDAY:"):
- print(line, file=g)
- elif line.startswith("TEL;"):
- match = regex.match(line)
- if match:
- (typ, number) = match.groups()
- if number.startswith("+49"):
- number = "0" + number[3:]
- if number.startswith("+"):
- number = "00" + number[1:]
- out = "TEL;" + typ + ":" + number
- print(out, file=g)
- elif line.startswith("EMAIL;") and not email_found:
- colon_index = line.index(":")
- out = "EMAIL:" + line[colon_index+1:]
- print(out, file=g)
- email_found = True
- print("END:VCARD", file=g)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement