如何利用Python獲取文本中的電話號(hào)碼實(shí)例代碼
前言
此編制利用Python的簡(jiǎn)單編程,實(shí)現(xiàn)獲取txt文本里的電話號(hào)碼。
這里小編使用了Python3.8.6,os、re庫(kù)
打開(kāi)文本
#事先新建文本readphone.txt,將要提取的文章內(nèi)容復(fù)制到readphone.txt里。
下方為Python打開(kāi)文本
TXTtemp = open("readphone.txt","r+")
txtbuffer=TXTtemp.read()
正則表達(dá)式遍歷電話
利用正則表達(dá)式提取11位數(shù)字的電話號(hào)碼。
patter="(?:^|[^\d])(1\d{10})(?:$|[^\d])"
phone_list=re.compile(patter).findall(txtbuffer)
最后拼接輸出
輸出會(huì)新建一個(gè)文檔getphone.txt來(lái)存放提取到的電話(在文件夾里沒(méi)有g(shù)etphone.txt的時(shí)候),多次使用會(huì)自動(dòng)換行填寫。
with open('getphone.txt','a') as file0:
print('%s' %a,'%s' %t,'%s' %s,file=file0)
完整的代碼↓
復(fù)制粘貼可直接用,這里多了datetime是為了加入時(shí)間區(qū)分是什么時(shí)候獲取電話的。
import os,re,datetime
TXTtemp = open("readphone.txt","r+")
txtbuffer=TXTtemp.read()
patter="(?:^|[^\d])(1\d{10})(?:$|[^\d])"
phone_list=re.compile(patter).findall(txtbuffer)
t = 'Phone is : '
s = phone_list
a = datetime.datetime.now().date()
with open('getphone.txt','a') as file0:
print('%s' %a,'%s' %t,'%s' %s,file=file0)
close(TXTtemp)
效果圖↓↓↓

使用方法
獲取文章中的電話號(hào)碼(11位數(shù))
(1)將文章粘貼到readphone.txt保存
(2)雙擊運(yùn)行程序.py
(3)打開(kāi)getphone.txt提取到的電話在里面
補(bǔ)充:使用Python提取電話號(hào)碼和E-mail地址
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
# @File : PhoneAndEmail.py 項(xiàng)目:電話號(hào)碼與Email地址提取程序
# @Software: PyCharm
"""
運(yùn)行程序,從剪貼板獲取文本,找出文本所有的Email地址和電話號(hào)碼,然后將其粘貼到剪貼板
"""
import pyperclip, re
phoneRegex = re.compile(r'''(
(\d{3}|\(\d{3}\))? # 可選的區(qū)號(hào)
(\s|-|\.)? # 中間的分隔符
(\d{3}) # 開(kāi)始的3個(gè)數(shù)字
(\s|-|\.)? # 中間的分隔符
(\d{4}) # 后面的4個(gè)數(shù)字
(\s*(ext|x|ext.)\s*(\d{2,5}))? # 可選的分機(jī)號(hào)
)''', re.VERBOSE)
emailRegex = re.compile(r'''(
[a-zA-Z0-9._%+-]+ # 用戶名
@
[a-zA-Z0-9.-]+ # 域名
(\.[a-zA-Z]{2,4})
)''', re.VERBOSE)
text = pyperclip.paste()
matches = []
for groups in phoneRegex.findall(text) :
phoneNum = '-'.join([groups[1], groups[3], groups[5]])
if groups[8] != '' :
phoneNum += ' x' + groups[8]
matches.append(phoneNum)
for groups in emailRegex.findall(text) :
matches.append(groups[0])
if len(matches) > 0 :
pyperclip.copy('\n'.join(matches))
print('Copied to clipboard')
print('\n'.join(matches))
else :
print('No phone numbers or email addresses found.')結(jié)語(yǔ)
到此這篇關(guān)于如何利用Python獲取文本中電話號(hào)碼的文章就介紹到這了,更多相關(guān)Python獲取文本中電話號(hào)碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
django admin search_fields placeholder 管理后臺(tái)添加搜索框提示文字
這篇文章主要介紹了django admin search_fields placeholder 管理后臺(tái)添加搜索框提示文字,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
Python使用ConfigParser模塊操作配置文件的方法
這篇文章主要介紹了Python使用ConfigParser模塊操作配置文件的方法,結(jié)合實(shí)例形式分析了Python基于ConfigParser模塊針對(duì)配置文件的創(chuàng)建、讀取、寫入、判斷等相關(guān)操作技巧,需要的朋友可以參考下2018-06-06
Python+Selenium實(shí)現(xiàn)瀏覽器標(biāo)簽頁(yè)的切換
在實(shí)際工作中,我們經(jīng)常會(huì)遇到頁(yè)面切換的情況。就比如當(dāng)點(diǎn)擊了某個(gè)功能的按鈕后,瀏覽器出現(xiàn)了新的標(biāo)簽頁(yè),需要在這些標(biāo)簽頁(yè)之間進(jìn)行切換。本文將利用Selenium實(shí)現(xiàn)這一功能,需要的可以參考一下2022-06-06
用Python實(shí)現(xiàn)控制電腦鼠標(biāo)
大家好,本篇文章主要講的是用Python實(shí)現(xiàn)控制電腦鼠標(biāo),感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下2022-01-01
Python中三種時(shí)間格式轉(zhuǎn)換的方法
本文主要介紹了Python中三種時(shí)間格式轉(zhuǎn)換的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
在Python中使用xlrd和xlwt讀寫Excel文件代碼實(shí)例
這篇文章主要介紹了在Python中使用xlrd和xlwt讀寫Excel文件代碼實(shí)例,python操作excel主要用到xlrd和xlwt兩個(gè)庫(kù),即xlrd是讀excel,xlwt是寫excel庫(kù),文中提供了部分實(shí)例代碼,需要的朋友可以參考下2023-08-08
Python實(shí)現(xiàn)用戶注冊(cè)登錄程序
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)用戶注冊(cè)登錄程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02

