Part29 2信息提取的一般方法
下面我們介紹信息提取的一般方法磕潮。信息提取指從標(biāo)記后的信息中陵霉,提取所關(guān)注的內(nèi)容之前為我們講過信息標(biāo)記的三種形式:XML JSON和YAML咳蔚。無論哪種形式在信息標(biāo)記中包含信息的一部分四瘫。我們關(guān)心的是我們所要提出的信息內(nèi)容积蔚。那么該怎么做呢挺尾?這里有很多種方法伶唯,我們這里邊從一般意義上給出幾種方法:
比如第一種方法:我們可以完整的解析信息的標(biāo)記形式骡送,然后再提取信息中的關(guān)鍵信息。簡單說待笑,我們用標(biāo)記解析器去解析XML鸣皂、JSON、YAML格式暮蹂。然后將其中所需要的信息提取出來寞缝。比如說BeautifulSoup庫提供了對標(biāo)簽樹的遍歷。我們需要解析成信息椎侠,去遍歷這棵樹就可以了第租。這種方法優(yōu)點是信息解析準(zhǔn)確,你需要那部分信息就能找到這部分信息的位置我纪,并且把信息提取出來慎宾。但是缺點也非常明顯,我們再提取信息的時候過程會非常繁瑣浅悉,速度會非常的慢趟据。也需要你對整個文件的信息組織形式有清晰的認識和理解。
那么我們可以有第二種一般意義上的方法:
我們可以無視任何的信息標(biāo)記形式术健,直接搜索關(guān)鍵信息汹碱。就像我們在一個word文檔中去搜索某一個關(guān)鍵詞一樣,根本不需要關(guān)系這個word文檔有怎樣的標(biāo)記形式和格式荞估。只需要我們對信息的文本利用查找函數(shù)去查找就行了咳促。這種方法的優(yōu)點是提取過程非常簡潔稚新,速度較快。但是缺點是跪腹,他對提取結(jié)果缺乏準(zhǔn)確性的定義褂删,或者說提取結(jié)果的準(zhǔn)確性與信息內(nèi)容直接相關(guān)。
那么冲茸,我們是解析全部的信息形式這種方法好還是無視信息形式直接去搜索方法好屯阀。當(dāng)然從實際使用中,最好的方法是一種融合的方法轴术。
也就說我們結(jié)合形式解析和搜索方法來提取關(guān)鍵信息难衰。這需要我們的工具具備能夠解析信息標(biāo)記解析器的能力,同時還能夠?qū)ξ谋具M行查找逗栽。
下面我們以BeautifulSoup庫為例盖袭,來解釋一下如何實現(xiàn)這樣的一個功能。比如我們要提取