2016-02-01 69 views
0

這個想法是打開一個包含縮寫和完整單詞的文本文件。 與2列和n行一樣的表。 然後打開html文件,去掉html標誌,搜索縮寫,替換它們並將它們保存在新的文本文件中。html文件中的Python替換縮寫

-------------------------應該在文件中打開:
RASPUKNUTI,raspuknutivi
topografskiüslucaju reflektivni ZA svaki .. 。

代碼

import re 
    from bs4 import BeautifulSoup 
    import codecs 
    #--------------------------------unos podataka za pretrazivanje 
    dat=open('citaj.txt',"r") 
    bs4_objekt=BeautifulSoup(dat,"lxml",from_encoding="UTF-8") 
    onlytext=bs4_objekt.text.strip() 
    # 
    z=open('zamijeni_kratice3.txt','r') 
    text=z.read() 
    lista_rijeci=text.split('\n') 
    for rijec in lista_rijeci: 
     odjeli=rijec.split("|") 
     samotext=re.sub("\s({0})".format(odjeli[0]),"{0}".format(odjeli[1]),onlytext) 
     #sm2=re.sub(r'\s(refl.)','reflektivni',samotext) 
    z.close() 
    with codecs.open('novi_HAZU.txt','w',encoding='utf8') as f: 
     f.write(sm2) 
    f.close() 

的格式的話是不行的,而且它並不顯示錯誤。當我把替換隻是一個字,工作正常:
#sm2=re.sub(r'\s(refl.)','reflektivni',samotext)
我在這裏循環旋轉。任何建議,想法?

01.02.2016。 19:26 我的目標是得到類似於Python解釋器的東西,而不是目前的狀態文件:picture 或最近的我能到原來的:address

+1

您能給你的變量和文件有意義的英文名字這會讓我們更容易理解你的代碼。順便說一下,我只需用'f.open()'縮寫來打開html文件和文件,遍歷每個縮寫並用'str.replace()'代替它。 – wewa

+0

謝謝你的回覆。我會牢記這一點。 – biGmazi

回答

0

我看到的是,你的代碼不保留的問題替代後的變化。請嘗試:

如果
import re 
from bs4 import BeautifulSoup 
import codecs 
#--------------------------------unos podataka za pretrazivanje 
dat=open('citaj.txt',"r") 
bs4_objekt=BeautifulSoup(dat,"lxml",from_encoding="UTF-8") 
onlytext=bs4_objekt.text #.strip() 
# 
z=open('zamijeni_kratice3.txt','r') 
text=z.read() 
lista_rijeci=text.split('\n') 
for rijec in lista_rijeci: 
    odjeli=rijec.split("|") 
    onlytext=re.sub("({0})".format(odjeli[0]),"{0}".format(odjeli[1]),onlytext) 
z.close() 
with codecs.open('novi_HAZU.txt','w',encoding='utf8') as f: 
    f.write(onlytext) 
f.close() 

不知道這符合您的需要(我用的複製/粘貼,並提出了說明目的2個<tr>元素):

enter image description here

+0

謝謝,格式現在可用。但我的目標不是聯繫在一起。這個html文件就像一本字典。 RASPUKNUTIV-(即主詞),raspukneutrumtivi-(即synonim)。它們應該在一行中,如標題。和「topografemininumko u slucaju refemininum。za svaki ...」這是解釋,它應該像一個特殊的專欄下,sepparated。 – biGmazi

+0

@biGmazi:爲了獲得描述中的確切輸出,我使用了行連接。主詞和它的synonim在一行中,這和html文件中的一樣。仍然對輸出格式感到困惑。你能否進一步說明預期的格式? – Quinn

+0

@biGmazi:或者,您可以將輸出文件格式化爲任何您喜歡的內容,因爲替換現在可以。 – Quinn