每個號碼前面帶『+』,而原始文字中有些號碼帶fax字首,為傳真號碼,需要剔除掉
# -*- coding: utf-8 -*-
"""created on tue aug 18 09:46:30 2020
@author: songyou han
"""import os
import csv
# 獲取cvs檔案列表函式
deffile_name
(file_dir)
: files =
for root, dirs,
file
in os.walk(file_dir)
: files =
file
#當前路徑下所有非目錄子檔案
return files
# **號碼提取函式
defextractrawdata
(source=
'raw_datas'
,destination=
'extract_phone'):
files = file_name(source)
dict
=for filename in files:
file
= source+
"/"+filename
datas = csv.reader(
open
(file
,'r'
,encoding =
"utf-8"))
data_list =
for item in datas:0]
)dict
.update(
)return
dict
defextractphonenumber
(rawdata)
:
phonenumbersdict =
for key,value in rawdata.items():
phonenumberslist =
for row in value:
row = row.lower(
).replace(
" fax"
," fax"
).replace(
" ","")
indexlist =
fax*** =
0for i in
range
(len
(row)):
if row[i]in[
'f']
: fax*** =
1continue
if row[i]in[
'+']
:if fax*** ==0:
else
: fax*** =
0
phonenumbers =
for index in indexlist:
i = index
phonenumber =
'+'# 存放單個**號碼的盒子
while row[i+1]
in['0',
'1',
'2',
'3',
'4',
'5',
'6',
'7',
'8',
'9']
: phonenumber = phonenumber + row[i+1]
i +=
1if phonenumber not
in phonenumbers:
print
("從以下文字中提取到號碼(已去重):"
+str
(phonenumbers)
)print
("........................"
)print
(row)
print
("********************===="
) phonenumbersdict.update(
)return phonenumbersdict
defwritephone
(filename,phonenumberslist)
: f =
open
('extract_phone/(號碼抽取)'
+filename,
'w+'
)for phone in phonenumberslist:
f.write(
"'"+phone+
"'")
f.write(
"\n"
) f.close(
)
rawdata = extractrawdata(
'raw_datas'
,'extract_phone'
)phonenumbersdict = extractphonenumber(rawdata)
print
("\n\n小夥子,你的**號碼提取完了,現在開始存入extract_phone資料夾中。。。。。。\n"
)for key,value in phonenumbersdict.items():
writephone(key,value)
print
("存入檔案:\t(號碼抽取)"
+str
(key)
)print
("\n存好了!!!"
)
Python爬蟲(一) 資料清洗與提取
re模組的使用 提取,匹配,替換 提取 findall 匹配 match 替換 sub 例子 sub 正規表示式 替換的字元 需要替換的字元 html re.sub n html findall 正規表示式 要替換的字元 ret re.findall pattern 1,html match 正規表...
爬蟲資料清洗之html標籤的清洗
我們平常爬取資料時,會經常有多餘的html便簽,下面我們就來清洗一下這些標籤 1,只清洗標籤,可以用正則,也可以用remove remove tags 函式 資料 雲計算 物聯網等工程技術人員,也有電子競技員 無人機駕駛員等新穎工種 你心動了嗎?哪些學校開設了相關專業值得關注?戳圖了解 轉給正在求學...
自然語言處理 資料清洗 清洗文字中html標籤
一段本文中既有文字,又有很多html標籤,很亂,需要進行清洗,下面是用python 進行過濾辣雞html的指令碼。coding utf 8 import pandas as pd import re import jieba deffilter tags htmlstr python通過正規表示式去...