编辑
2025-07-02
Python脚本
00
请注意,本文编写于 86 天前,最后修改于 9 天前,其中某些信息可能已经过时。
python
import re def extract_emails_from_file(filename): """从文件中提取所有邮箱地址""" with open(filename, 'r', encoding='utf-8') as file: content = file.read() # 使用正则表达式匹配邮箱地址 emails = re.findall(r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b', content) return emails def create_vcard(email): """为单个邮箱创建vCard字符串""" username = email.split('@')[0] vcard = f"""BEGIN:VCARD VERSION:3.0 EMAIL:{email} N:{username};{username};;; X-RAMBLER-CONTACT-TYPE:manual END:VCARD """ return vcard def generate_vcf(emails, output_filename): """生成包含所有邮箱的vcf文件""" with open(output_filename, 'w', encoding='utf-8') as vcf_file: for email in emails: vcard = create_vcard(email) vcf_file.write(vcard) vcf_file.write('\n') # 每个vCard之间用空行分隔 def main(): input_filename = input("请输入包含邮箱的文件名: ") output_filename = input("请输入输出的vcf文件名(例如: contacts.vcf): ") emails = extract_emails_from_file(input_filename) if not emails: print("没有找到任何邮箱地址。") return generate_vcf(emails, output_filename) print(f"成功生成 {len(emails)} 个联系人到 {output_filename}") if __name__ == "__main__": main()

本文作者:tiger

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!