要使用Python抓取电话号码,你可以使用正则表达式来匹配文本中的电话号码。以下是一个简单的步骤和示例代码,你可以根据需要进行修改:
导入必要的库
import re
定义一个函数来读取文本文件
def read_text(path):
with open(path, 'r', encoding='utf-8') as file:
text = file.read()
return text
定义一个函数来使用正则表达式提取电话号码
def get_phone_numbers(text):
正则表达式匹配中国常见的手机号码格式
pattern = re.compile(r'1[3-9]\d{9}')
return pattern.findall(text)
执行读取和提取功能
输入文本文件路径
path = input('请输入需要提取电话号码的文件路径(.txt): ')
读取文本文件内容
text = read_text(path)
提取电话号码
phone_numbers = get_phone_numbers(text)
打印提取结果
print(phone_numbers)
以上代码会提示你输入包含电话号码的文本文件路径,然后读取文件内容并使用正则表达式提取出所有匹配的手机号码。
如果你需要从其他类型的文件(如Excel或PDF)中提取电话号码,你可能需要使用额外的库,例如`xlrd`或`pdfminer`,来处理这些文件格式。
请注意,正则表达式匹配可能不会涵盖所有可能的电话号码格式,特别是随着手机运营商和号码段的变化。你可能需要根据实际需要调整正则表达式。