我已經寫下了一段代碼,以從html文件中提取一些文本。此代碼從網頁中提取所需的行,現在我要提取序列數據。不幸的是,我無法提取文本,它顯示出一些錯誤。從html文件中提取文本python
import urllib2
from HTMLParser import HTMLParser
import nltk
from bs4 import BeautifulSoup
# Proxy information were removed
# from these two lines
proxyOpener = urllib2.build_opener(proxyHandler)
urllib2.install_opener(proxyOpener)
response = urllib2.urlopen('http://tuberculist.epfl.ch/quicksearch.php?gene+name=Rv0470c')
################## BS Block ################################
soup = BeautifulSoup(response)
text = soup.get_text()
print text
##########################################################
html = response.readline()
for l in html:
if "|Rv0470c|" in l:
print l # code is running successfully till here
raw = nltk.clean_html(html)
print raw
如何成功運行此代碼?我已經檢查了所有可用的線程和解決方案,但沒有任何工作。
我想提取這一部分:
M. tuberculosis H37Rv|Rv0470c|pcaA
MSVQLTPHFGNVQAHYDLSDDFFRLFLDPTQTYSCAYFERDDMTLQEAQIAKIDLALGKLNLEPGMTLLDIGCGWGATMRRAIEKYDVNVVGLTLSENQAGHVQKMFDQMDTPRSRRVLLEGWEKFDEPVDRIVSIGAFEHFGHQRYHHFFEVTHRTLPADGKMLLHTIVRPTFKEGREKGLTLTHELVHFTKFILAEIFPGGWLPSIPTVHEYAEKVGFRVTAVQSLQLHYARTLDMWATALEANKDQAIAIQSQTVYDRYMKYLTGCAKLFRQGYTDVDQFTLEK
什麼是錯誤? – mvelay
這是錯誤「NotImplementedError:要刪除HTML標記,請使用BeautifulSoup的get_text()函數」 然後我嘗試使用BeutifulSoup,但其返回的文本作爲數百萬單個字符,而不是正確的文本 – jax
請[編輯]您的問題,並告訴我們你對BS的使用。 – 2016-03-07 09:11:57