Bio::SearchIO分析ncbi-blast+生成的xml的一個問題

工做環境 LMDE 2 Betsy

大概是由於今天教研室網絡超爛(彷佛並非這個緣由),在本身搭建的簡陋web版blast(基於ncbi-blast+)上比對個序列,失敗了,查了下/var/log/apache2/error.log,居然這種錯誤:web

--------------------- WARNING ---------------------
MSG: error in parsing a report:
 http error : Operation timed out
---------------------------------------------------

簡直震驚,這竟然須要網絡?我真是想不通-_-||apache

看了下對應的 blast 結果文件是存在的,沒有問題。網絡

幾番嘗試,折騰,發現 wwwblast 生成的 xml 格式文件處理起來就沒問題,可迅速得出結果。code

……xml

而後,把兩種 xml 文件打開作個對比,發現:it

wwwblast 生成的 xml 裏第二行是這樣的

<!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "NCBI_BlastOutput.dtd">

io

blast+ 生成的 xml 裏第二行是這樣的

<!DOCTYPE BlastOutput PUBLIC "-//NCBI//NCBI BlastOutput/EN" "http://www.ncbi.nlm.nih.gov/dtd/NCBI_BlastOutput.dtd">

換成 wwwblast 格式的話,就不蹦錯誤了。ast


彷佛這並非根本緣由……看起來不太合適。perl

解決問題

查了下Bio::SearchIO::blastxml,以爲有可能什麼模塊沒裝,而後發現XML::SAX::ExpatXS沒裝,安裝了下試試看im

sudo aptitude install libxml-sax-expatxs-perl

而後如今運行起來沒問題了,但願就此解決。

糊里糊塗的。

相關文章
相關標籤/搜索