[發(fā)明專利]開源軟件獲取與搜索系統(tǒng)的實(shí)現(xiàn)方法有效
| 申請(qǐng)?zhí)枺?/td> | 201210097169.4 | 申請(qǐng)日: | 2012-04-05 |
| 公開(公告)號(hào): | CN102760151A | 公開(公告)日: | 2012-10-31 |
| 發(fā)明(設(shè)計(jì))人: | 王懷民;李翔;尹剛;朱沿旭;史殿習(xí);王濤;袁霖;滕猛;劉惠;余躍 | 申請(qǐng)(專利權(quán))人: | 中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué) |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30 |
| 代理公司: | 北京安博達(dá)知識(shí)產(chǎn)權(quán)代理有限公司 11271 | 代理人: | 徐國(guó)文 |
| 地址: | 410073 湖南*** | 國(guó)省代碼: | 湖南;43 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 軟件 獲取 搜索 系統(tǒng) 實(shí)現(xiàn) 方法 | ||
1.一種開源軟件獲取與搜索系統(tǒng)的實(shí)現(xiàn)方法,包括下列步驟:
步驟1、搭建數(shù)據(jù)服務(wù),在企業(yè)級(jí)服務(wù)器上配置關(guān)系數(shù)據(jù)庫(kù)管理軟件,搭建關(guān)系與對(duì)象映射框架,使得上層應(yīng)用程序?qū)﹃P(guān)系數(shù)據(jù)庫(kù)進(jìn)行調(diào)用時(shí)能使業(yè)務(wù)層代碼能夠以對(duì)象的方式訪問和更新數(shù)據(jù)庫(kù)里的信息;
步驟2、網(wǎng)頁(yè)獲取,接收用戶的輸入定義,確定一定數(shù)目的已知URL地址的開源社區(qū)集合,通過爬蟲抓取開源社區(qū)中的開源軟件主頁(yè),將開源項(xiàng)目的爬取分為開源項(xiàng)目列表頁(yè)爬取和開源項(xiàng)目主頁(yè)爬取兩個(gè)階段。
步驟3、開源屬性抽取,從爬取到的頁(yè)面中抽取開源軟件領(lǐng)域的信息即開源屬性;
步驟4、對(duì)跨社區(qū)項(xiàng)目信息進(jìn)行整合,當(dāng)來自不同社區(qū)的項(xiàng)目具有不同的屬性時(shí),取屬性并集;同時(shí)保存不同項(xiàng)目之間的依賴關(guān)系;
步驟5、對(duì)獲取的開源屬性建立倒排索引,其中的每一項(xiàng)都包括一個(gè)屬性值和具有該屬性值的各記錄的地址,由屬性值來確定記錄的位置,而非由記錄來確定屬性值。
步驟6、響應(yīng)于用戶搜索輸入或預(yù)定義的排名機(jī)制,對(duì)需要展現(xiàn)的開源項(xiàng)目進(jìn)行排序并顯示。
2.如權(quán)利要求1所述的方法,其中所述開源屬性包括項(xiàng)目編程語(yǔ)言、證書、運(yùn)行環(huán)境、開發(fā)狀態(tài)、注冊(cè)時(shí)間、最新發(fā)布時(shí)間、下載次數(shù)、主頁(yè)鏈接等。
3.如權(quán)利要求1所述的方法,其中步驟2進(jìn)一步包括:
爬取開源項(xiàng)目列表頁(yè),根據(jù)社區(qū)的項(xiàng)目主頁(yè)URL模板進(jìn)行匹配,抽取項(xiàng)目主頁(yè)URL存放到數(shù)據(jù)庫(kù),對(duì)不斷變化的社區(qū)開源項(xiàng)目主頁(yè)構(gòu)成情況進(jìn)行快照;爬取開源項(xiàng)目主頁(yè),從數(shù)據(jù)庫(kù)中取出項(xiàng)目主頁(yè)URL進(jìn)行定向爬取,將爬取到的完整HTML頁(yè)面文本保存到數(shù)據(jù)庫(kù)。
4.如權(quán)利要求1所述的方法,其中所述步驟3進(jìn)一步包括:
步驟31、模板探測(cè),發(fā)現(xiàn)每個(gè)開源社區(qū)用于顯示開源屬性的網(wǎng)頁(yè)模板,可以是HTML樹中的標(biāo)簽路徑,也可以是HTML文本中的正則表達(dá)式,作為抽取開源屬性的規(guī)則。
步驟32、通過已獲取的模板定位到開源屬性值的HTML標(biāo)簽以進(jìn)行標(biāo)簽定位。
5.如權(quán)利要求4所述的方法,其中所述正則表達(dá)式通過人工觀察確定。
6.如權(quán)利要求4所述的方法,其中所述標(biāo)簽路徑通過種子集合確定,。獲取開源屬性的可列屬性值,使用字符串相似度匹配算法,自動(dòng)的在網(wǎng)頁(yè)集合中發(fā)現(xiàn)開源屬性值所在標(biāo)簽路徑,當(dāng)在某位置具有最高匹配次數(shù)時(shí)確定該位置從而篩選出唯一的網(wǎng)頁(yè)模板。
7.如權(quán)利要求6所述的方法,其中所述字符串的相似度匹配通過兩字符串對(duì)應(yīng)q-gram集合的雅加達(dá)(Jaccard)系數(shù)作為兩字符串匹配度數(shù)值,當(dāng)該數(shù)值若高于預(yù)定義的某閾值則認(rèn)為匹配。
8.如權(quán)利要求4所述的方法,其中所述標(biāo)簽定位通過正則表達(dá)式定位規(guī)則在目標(biāo)網(wǎng)頁(yè)中發(fā)現(xiàn)屬性值標(biāo)簽節(jié)點(diǎn);或者,所述標(biāo)簽定位根據(jù)html頁(yè)面的文檔對(duì)象模型樹形結(jié)構(gòu),將每個(gè)標(biāo)簽位置表示為從頁(yè)面根節(jié)點(diǎn)到屬性值所在節(jié)點(diǎn)的標(biāo)簽路徑,借助支持該路徑的網(wǎng)頁(yè)解析工具進(jìn)行標(biāo)簽定位與獲取。
9.如權(quán)利要求1所述的方法,其中所述步驟6進(jìn)一步包括,如果接收到用戶的搜索輸入,則通過計(jì)算用戶輸入的關(guān)鍵字與倒排索引數(shù)據(jù)集合之間的字符串匹配確定的相關(guān)度進(jìn)行排序;如果沒有接收到用戶搜索輸入,則依據(jù)項(xiàng)目的開源參與程度和信息完備程度定義的項(xiàng)目排名機(jī)制,進(jìn)行排序與展示。
10.如權(quán)利要求9所述的方法,其中所述項(xiàng)目的開源參與程度由一個(gè)項(xiàng)目所用于托管的社區(qū)數(shù),其所關(guān)聯(lián)的其他開源項(xiàng)目數(shù)來量化;所述信息完備程度由項(xiàng)目的開源屬性個(gè)數(shù)來量化。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué),未經(jīng)中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210097169.4/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語(yǔ)言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫(kù)結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法





