Python如何删除两个常量分隔符之间的所有数据解析有噪声的htmld

2024-05-13 10:49:24 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在解析维基百科的纯文本数据。无论出于何种原因,每一页末尾都附有以下文字:

af:Vlermuis
ang:Hreaðemūs
ar:خفاش
an:Chiroptera
ast:Esperteyu
gn:Mbopi
ay:Chiñi
az:Yarasalar
bn:বাদুড়
zh-min-nan:Bi̍t-pô
be:Рукакрылыя
be-x-old:Рукакрылыя
bg:Прилепи
br:Askell-groc'hen
ca:Ratpenat
cv:Çара çерçи евĕрлисем
cs:Letouni
co:Topu pinnutu
cy:Ystlum
da:Flagermus
de:Fledertiere
nv:Jaaʼabaní Danilínígíí
et:Käsitiivalised
el:Νυχτερίδα
eml:Pipistrel
es:Chiroptera
eo:Kiropteroj
eu:Saguzar
fa:خفاش
fo:Flogmýs
fr:Chiroptera
ga:Ialtóg
gd:Ialtag
gl:Morcegos
gan:簷老鼠
hak:Phi̍t-phò-è
xal:Бавуха
ko:박쥐
hi:चमगादड़
hr:Šišmiši
io:Vespertilio
id:Kelelawar
ia:Vespertilion
is:Leðurblaka
it:Chiroptera
he:עטלפים
jv:Lawa
pam:Talibatab
ka:ხელფრთიანები
kk:Қолқанаттылар
rn:Agahungarema
sw:Popo
ht:Chòvsourit
ltg:Plykspuorņi
la:Chiroptera
lv:Sikspārņi
lt:Šikšnosparniai
lij:Chiroptera
li:Vleermuis
ln:Ngɛmbo
hu:Denevérek
mk:Лилјаци
ml:വവ്വാൽ
mr:वटवाघूळ
ms:Kelawar
mdf:Веньдряв
my:လင်းနို့
nah:Tzinācantli
nl:Vleermuizen
ne:चमेरो
ja:コウモリ
frr:Fladermüsen
no:Flaggermus
nn:Flaggermus
nrm:Caûque-souothis
nov:Chiroptera
oc:Chiroptera
koi:Кушборддэз
pcd:Soerie-volante
pms:Ratavolòira
pl:Nietoperze
pt:Morcego
ro:Chiroptere
rm:Utschè-mezmieur
qu:Masu
ru:Рукокрылые
sah:Илии кынаттаахтар аймахтара
sc:Chiroptera
sco:Baukie
stq:Flädderdierte
sq:Lakuriqi i natës
scn:Taddarita (armalu)
simple:Bat
sk:Netopiere
sl:Netopirji
sr:Слепи мишеви
sh:Šišmiš
su:Kalong
fi:Lepakot
sv:Fladdermöss
tl:Paniki
ta:வௌவால்
te:గబ్బిలం
th:ค้างคาว
tg:Кӯршапарак
chy:Méšenonetsénóne
tr:Yarasa
uk:Кажани
ur:چمگاڈر
vi:Bộ Dơi
war:Kabog
yo:Àdán
zh-yue:蝙蝠
zea:Vleermuzen
zh:蝙èン

删除“af”和“zh”之间的所有内容的python方法是什么?在


Tags: 数据文本原因beafne文字mi
1条回答
网友
1楼 · 发布于 2024-05-13 10:49:24

我在做维基百科分析,也遇到了类似的问题。然而,并不是所有我正在解析的页面的底部都有文本,所以我从来没有解决过这个问题。在

这里有一些东西可以让你开始。玩玩索引和rindex,然后逐个检查。在

def delete_everything_in_between(st, start, end):
    first_index = st.index(start)
    second_index = st.index(end)
    return st[:first_index] + st[second_index:]

delete_everything(st, 'af', 'zh')

当然,如果您愿意假设垃圾文本总是在输入的末尾,那么您只需找到第一个索引并返回st[:first_index]。在

相关问题 更多 >