專(zhuān)利名稱(chēng):一種網(wǎng)絡(luò)商品信息抽取方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種網(wǎng)絡(luò)商品信息抽取方法。
技術(shù)背景
近年來(lái),隨著電子商務(wù)的飛速發(fā)展,各類(lèi)企業(yè)、個(gè)人都紛紛通過(guò)互聯(lián)網(wǎng)開(kāi)展?fàn)I銷(xiāo)活動(dòng),使互聯(lián)網(wǎng)匯集了大量商品信息,已成為最大的商品信息來(lái)源。這些信息中不乏像價(jià)格、 產(chǎn)地、經(jīng)銷(xiāo)商、銷(xiāo)量、客戶(hù)評(píng)價(jià)等極具商業(yè)價(jià)值的信息。
分類(lèi)、分析這些數(shù)據(jù),并以適當(dāng)方式展示出來(lái),對(duì)于企業(yè)的經(jīng)營(yíng)決策能夠帶來(lái)一定的幫助。例如,對(duì)一個(gè)制造銷(xiāo)售高壓鍋的企業(yè)來(lái)說(shuō),如何定位自己的產(chǎn)品價(jià)格,如何掌握市場(chǎng)瞬息萬(wàn)變的行業(yè)市場(chǎng)價(jià)格,特別是競(jìng)爭(zhēng)對(duì)手的價(jià)格變化,如何知道對(duì)手的銷(xiāo)售地區(qū)范圍、 銷(xiāo)售渠道,如何比較和定位自己的產(chǎn)品特點(diǎn)。而所有這些過(guò)程的基礎(chǔ)是如何從網(wǎng)頁(yè)中準(zhǔn)確提取信息。
網(wǎng)頁(yè)信息抽取目前主要分人工抽取、全自動(dòng)抽取、半自動(dòng)抽取三種。人工抽取準(zhǔn)確性好,但工作量大、效率低、成本高;全自動(dòng)抽取成本低、效率高、但準(zhǔn)確性差、技術(shù)難度也大;半自動(dòng)抽取以少量人工標(biāo)注為基礎(chǔ),工作量小,又由于人的介入準(zhǔn)確性有較好保證,是比較可行的方式。發(fā)明內(nèi)容
本發(fā)明的目的在于克服現(xiàn)有技術(shù)中存在的上述不足,而提供一種屬于半自動(dòng)抽取的網(wǎng)絡(luò)商品信息抽取方法,以從網(wǎng)頁(yè)中準(zhǔn)確快速的抽取并標(biāo)注所需要的特定信息。
本發(fā)明解決上述問(wèn)題所采用的技術(shù)方案是一種網(wǎng)絡(luò)商品信息抽取方法,其特征在于該方法包括如下步驟
1、利用模板生成工具生成網(wǎng)絡(luò)商品信息抽取的初始模板;
2、應(yīng)用所述初始模板對(duì)網(wǎng)站進(jìn)行商品信息抽取,該步驟包括
a、在網(wǎng)站的產(chǎn)品類(lèi)目頁(yè)面,利用人工進(jìn)行標(biāo)注,提取出網(wǎng)頁(yè)中所有商品類(lèi)目名及列表頁(yè)URL,加入一個(gè)類(lèi)目隊(duì)列中;
b、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),交給人工進(jìn)行標(biāo)注;完成后,將該類(lèi)目路徑及生成的模板存入一個(gè)類(lèi)目模板對(duì)應(yīng)表中;從所述列表頁(yè)中提取出多個(gè)商品詳情頁(yè)URL,以及下一頁(yè)URL,將商品詳情頁(yè)URL交給一個(gè)網(wǎng)頁(yè)池,將下一頁(yè)URL加入所述類(lèi)目隊(duì)列的隊(duì)尾;
C、從所述網(wǎng)頁(yè)池中選擇一詳情頁(yè),交給人工進(jìn)行標(biāo)注;完成后,也存入所述類(lèi)目模板對(duì)應(yīng)表中,這樣一個(gè)類(lèi)目路徑下有兩個(gè)模板分別對(duì)應(yīng)列表頁(yè)和詳情頁(yè);
d、對(duì)所述網(wǎng)頁(yè)池中URL逐一采用該類(lèi)目下的詳情頁(yè)模板進(jìn)行處理,直到網(wǎng)頁(yè)池為空;
e、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),檢查該類(lèi)目路徑是否存在于所述類(lèi)目模板對(duì)應(yīng)表的列表頁(yè)模板中;
若存在,則使用該模板分析;
若不存在,則逐一嘗試對(duì)應(yīng)所述類(lèi)目模板對(duì)應(yīng)表中其它類(lèi)目的模板,若數(shù)據(jù)正確, 則將其對(duì)應(yīng)關(guān)系加入所述類(lèi)目模板對(duì)應(yīng)表中,若數(shù)據(jù)錯(cuò)誤,則提交人工標(biāo)注模板,并也加入所述類(lèi)目模板對(duì)應(yīng)表中。
f、逐一處理類(lèi)目隊(duì)列中列表頁(yè)直到隊(duì)列為空。
本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點(diǎn)和效果
1、利用本發(fā)明的模板工具,經(jīng)過(guò)幾分鐘的簡(jiǎn)單培訓(xùn),普通使用者就能在10分鐘內(nèi)定義一個(gè)信息抽取模板,而無(wú)需熟悉HTML的程序員介入,降低了該項(xiàng)工作對(duì)人員素質(zhì)的要求;通過(guò)可視化界面的抽取工具,使工作更加直觀(guān),方便了相關(guān)操作,降低了差錯(cuò)率,提高了工作效率。
2、利用本發(fā)明的抽取流程,能夠自動(dòng)發(fā)現(xiàn)同類(lèi)網(wǎng)頁(yè)中的各種差異情況,便于人工處理;抽取流程的設(shè)計(jì)更便于發(fā)現(xiàn)復(fù)用以前的模板,有效降低人工定制的模板數(shù)量。
圖1為本發(fā)明實(shí)施例商品信息抽取工作示意圖。
圖2為本發(fā)明實(shí)施例抽取出的商品信息示意圖。
圖3為本發(fā)明建立的類(lèi)目模板對(duì)應(yīng)表的示意圖。
具體實(shí)施方式
下面結(jié)合附圖并通過(guò)實(shí)施例對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說(shuō)明。
參見(jiàn)圖1 圖3,本實(shí)施例中,以“淘寶網(wǎng)”的“食品類(lèi)”為例,詳細(xì)描述,商品信息抽取的整個(gè)過(guò)程。
1、利用模板生成工具生成網(wǎng)絡(luò)商品信息抽取的初始模板,模板生成工具為瀏覽器的一插件工具,由本發(fā)明的申請(qǐng)人設(shè)計(jì)。該步驟過(guò)程如下
(1)、使用者在瀏覽器中隨意瀏覽網(wǎng)頁(yè),直到需要抽取信息的網(wǎng)頁(yè);
O)、點(diǎn)擊瀏覽器工具欄中的“模板生成插件”圖標(biāo),啟動(dòng)抽取工具;
(3)、點(diǎn)擊“開(kāi)始采集”按鈕,啟動(dòng)抽取過(guò)程,此時(shí)當(dāng)鼠標(biāo)移動(dòng)到網(wǎng)頁(yè)的各部分時(shí)會(huì)出現(xiàn)藍(lán)色的框,標(biāo)識(shí)抽取的位置;
、點(diǎn)擊“新地標(biāo)”或“新記錄”按鈕,生成“地標(biāo)”或“記錄”,再在網(wǎng)頁(yè)中選中抽取的區(qū)域,模板生成工具自動(dòng)根據(jù)啟發(fā)式規(guī)則產(chǎn)生相應(yīng)路徑;
(5)、使用者對(duì)此路徑附加上填寫(xiě)變量名、備注等信息,表示其含義;
(6)、重復(fù)步驟⑷、(5),直到感興趣的字段都標(biāo)注完成;
(7)、點(diǎn)擊“應(yīng)用”按鈕,模板生成工具按當(dāng)前定義的模板從當(dāng)前網(wǎng)頁(yè)中抽取相應(yīng)字段內(nèi)容并顯示出來(lái);
(8)、若內(nèi)容正確,使用者可點(diǎn)擊“保存”按鈕,保存模板,若不正確,使用者可對(duì)模板做些手工調(diào)整后再保存。
2、應(yīng)用所述初始模板對(duì)網(wǎng)站進(jìn)行商品信息抽取,該步驟包括
a、在網(wǎng)站的產(chǎn)品類(lèi)目頁(yè)面,利用人工進(jìn)行標(biāo)注,提取網(wǎng)頁(yè)中所有商品類(lèi)目名及列表頁(yè)URL,加入一個(gè)類(lèi)目隊(duì)列中。
具體為對(duì)“淘寶網(wǎng)”食品的“商品目錄”頁(yè)面進(jìn)行抽取,利用人工進(jìn)行標(biāo)注生成一個(gè)模板,該模板返回一個(gè)List型的對(duì)象$f00dCat存儲(chǔ)了網(wǎng)頁(yè)中所有商品類(lèi)目名及列表頁(yè) URL,加入一個(gè)類(lèi)目隊(duì)列中。b、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),交給人工進(jìn)行標(biāo)注;完成后,將該類(lèi)目路徑及生成的模板存入一個(gè)類(lèi)目模板對(duì)應(yīng)表中;從所述列表頁(yè)中提取出多個(gè)商品詳情頁(yè)URL,以及下一頁(yè)URL,將商品詳情頁(yè)URL交給一個(gè)網(wǎng)頁(yè)池,將下一頁(yè)URL加入所述類(lèi)目隊(duì)列的隊(duì)尾。具體為對(duì)類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè)“巧克力/DIY巧克力”,用用模板生成工具人工進(jìn)行標(biāo)注,生成定義一個(gè)“巧克力,,類(lèi)目的列表頁(yè)抽取模板,將該模板及該類(lèi)目路徑存入一個(gè)類(lèi)目模板對(duì)應(yīng)表中。該模板提取出多個(gè)商品詳情頁(yè)URL,并返回兩個(gè)結(jié)果,一個(gè)List 型的對(duì)象$偽0(11^計(jì)存儲(chǔ)了巧克力的詳情頁(yè)URL及名稱(chēng),由于一頁(yè)中有多個(gè)商品,因此是列表;另一個(gè)變量SnextPage存儲(chǔ)了下一頁(yè)URL。由于最后頁(yè)沒(méi)有下一頁(yè),因此該變量是可選的。將商品詳情頁(yè)URL交給一個(gè)網(wǎng)頁(yè)池,將下一頁(yè)URL加入所述類(lèi)目隊(duì)列的隊(duì)尾。C、從所述網(wǎng)頁(yè)池中選擇一詳情頁(yè),交給人工進(jìn)行標(biāo)注;完成后,也存入所述類(lèi)目模板對(duì)應(yīng)表中,這樣一個(gè)類(lèi)目路徑下有兩個(gè)模板分別對(duì)應(yīng)列表頁(yè)和詳情頁(yè)。具體為從網(wǎng)頁(yè)池中選擇一巧克力詳情頁(yè),用模板工具人工進(jìn)行標(biāo)注,生成定義一個(gè)“巧克力,,詳情頁(yè)模板,也存入類(lèi)目模板對(duì)應(yīng)表中。這樣“巧克力,,類(lèi)目路徑下有兩個(gè)模板分別對(duì)應(yīng)列表頁(yè)和詳情頁(yè)。該模板抽取的就是最終期望獲取的結(jié)果,包括商品信息和商家信息兩部分。d、對(duì)所述網(wǎng)頁(yè)池中URL逐一采用該類(lèi)目下的詳情頁(yè)模板進(jìn)行處理,直到網(wǎng)頁(yè)池為空。具體為對(duì)網(wǎng)頁(yè)池中巧克力詳情頁(yè)面URL,采用“巧克力詳情頁(yè)”模板逐一抽取信息,直到網(wǎng)頁(yè)池為空。也就是說(shuō)先對(duì)各頁(yè)面試用下“巧克力詳情頁(yè)”模板,看是否適用可能出現(xiàn)的各種情況。這樣的順序安排,便于發(fā)現(xiàn)問(wèn)題。經(jīng)過(guò)列表頁(yè)中一頁(yè)的多個(gè)商品的嘗試,一般能發(fā)現(xiàn)該類(lèi)商品大多數(shù)網(wǎng)頁(yè)中的差異了,也就為后面的同類(lèi)及其他類(lèi)商品的分析提供了個(gè)好的 ■石出。若模板頁(yè)中的抽取的數(shù)據(jù)不符合數(shù)據(jù)驗(yàn)證規(guī)則,則交人工修正模板。e、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),檢查該類(lèi)目路徑是否存在于所述類(lèi)目模板對(duì)應(yīng)表的列表頁(yè)模板中;若存在,則使用該模板分析;若不存在,則逐一嘗試對(duì)應(yīng)所述類(lèi)目模板對(duì)應(yīng)表中其它類(lèi)目的模板,若數(shù)據(jù)正確, 則將其對(duì)應(yīng)關(guān)系加入所述類(lèi)目模板對(duì)應(yīng)表中,若數(shù)據(jù)錯(cuò)誤,則提交人工標(biāo)注模板,并也加入所述類(lèi)目模板對(duì)應(yīng)表中。具體為取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),檢查該類(lèi)目路徑是否存在于所述類(lèi)目模板對(duì)應(yīng)表的列表頁(yè)模板中;若存在,則使用該模板分析;當(dāng)完成了“巧克力”列表頁(yè)第一頁(yè)45個(gè)商品的詳情頁(yè)分析后,可以開(kāi)始下一類(lèi)目“蜜餞/棗類(lèi)/梅/果脯”的分析了 ;若不存在,比如由于“蜜餞”類(lèi)目未分析過(guò),所以在類(lèi)目模板對(duì)應(yīng)表不存在相應(yīng)的模板,可以先嘗試用“巧克力”的模板抽取,若數(shù)據(jù)正確,則將其對(duì)應(yīng)關(guān)系加入類(lèi)目模板對(duì)應(yīng)表中,若數(shù)據(jù)錯(cuò)誤,則提交人工標(biāo)注模板,并也加入所述類(lèi)目模板對(duì)應(yīng)表中。由于有了這一步,當(dāng)各類(lèi)目中列表頁(yè)、詳情頁(yè)都比較相近時(shí),只需處理人工配置幾個(gè)模板就能處理所有頁(yè)面了。f、逐一處理類(lèi)目隊(duì)列中列表頁(yè)直到隊(duì)列為空。整個(gè)過(guò)程中,隊(duì)列設(shè)計(jì)對(duì)人工干預(yù)的時(shí)機(jī)是有比較大影響的。通過(guò)有效設(shè)計(jì)入隊(duì)時(shí)間,使需要人工干預(yù)的構(gòu)成都在爬取過(guò)程的初期。經(jīng)過(guò)一定數(shù)量的網(wǎng)頁(yè)處理后,將覆蓋大部分的網(wǎng)頁(yè)情況,整個(gè)過(guò)程就不需要人工干預(yù),可以自動(dòng)進(jìn)行下去了。本發(fā)明基于一種面向網(wǎng)頁(yè)抽取特定領(lǐng)域的自定義語(yǔ)言、一個(gè)模板生成工具,然后在信息抽取過(guò)程中進(jìn)行學(xué)習(xí),并對(duì)模板進(jìn)行修正,屬于半自動(dòng)抽取,可從網(wǎng)頁(yè)中準(zhǔn)確快速的抽取并標(biāo)注所需要的特定信息,例如商品名、商品圖片URL、價(jià)格。
權(quán)利要求
1. 一種網(wǎng)絡(luò)商品信息抽取方法,其特征在于該方法包括如下步驟(1)、利用模板生成工具生成網(wǎng)絡(luò)商品信息抽取的初始模板;(2)、應(yīng)用所述初始模板對(duì)網(wǎng)站進(jìn)行商品信息抽取,該步驟包括a、在網(wǎng)站的產(chǎn)品類(lèi)目頁(yè)面,利用人工進(jìn)行標(biāo)注,提取出網(wǎng)頁(yè)中所有商品類(lèi)目名及列表頁(yè)URL,加入一個(gè)類(lèi)目隊(duì)列中;b、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),交給人工進(jìn)行標(biāo)注;完成后,將該類(lèi)目路徑及生成的模板存入一個(gè)類(lèi)目模板對(duì)應(yīng)表中;從所述列表頁(yè)中提取出多個(gè)商品詳情頁(yè)URL,以及下一頁(yè)URL,將商品詳情頁(yè)URL交給一個(gè)網(wǎng)頁(yè)池,將下一頁(yè)URL加入所述類(lèi)目隊(duì)列的隊(duì)尾;C、從所述網(wǎng)頁(yè)池中選擇一詳情頁(yè),交給人工進(jìn)行標(biāo)注;完成后,也存入所述類(lèi)目模板對(duì)應(yīng)表中,這樣一個(gè)類(lèi)目路徑下有兩個(gè)模板分別對(duì)應(yīng)列表頁(yè)和詳情頁(yè);d、對(duì)所述網(wǎng)頁(yè)池中URL逐一采用該類(lèi)目下的詳情頁(yè)模板進(jìn)行處理,直到網(wǎng)頁(yè)池為空;e、取所述類(lèi)目隊(duì)列中隊(duì)頭的列表頁(yè),檢查該類(lèi)目路徑是否存在于所述類(lèi)目模板對(duì)應(yīng)表的列表頁(yè)模板中;若存在,則使用該模板分析;若不存在,則逐一嘗試對(duì)應(yīng)所述類(lèi)目模板對(duì)應(yīng)表中其它類(lèi)目的模板,若數(shù)據(jù)正確,則將其對(duì)應(yīng)關(guān)系加入所述類(lèi)目模板對(duì)應(yīng)表中,若數(shù)據(jù)錯(cuò)誤,則提交人工標(biāo)注模板,并也加入所述類(lèi)目模板對(duì)應(yīng)表中。f、逐一處理類(lèi)目隊(duì)列中列表頁(yè)直到隊(duì)列為空。
全文摘要
本發(fā)明涉及一種網(wǎng)絡(luò)商品信息抽取方法。本發(fā)明方法包括如下步驟(1)、利用模板生成工具生成網(wǎng)絡(luò)商品信息抽取的初始模板;(2)、應(yīng)用所述初始模板對(duì)網(wǎng)站進(jìn)行商品信息抽取。本發(fā)明采用一個(gè)模板生成工具,在信息抽取過(guò)程生成模板,并對(duì)模板進(jìn)行處理和修正,屬于半自動(dòng)抽取,可從網(wǎng)頁(yè)中準(zhǔn)確快速的抽取并標(biāo)注所需要的特定信息,例如商品名、商品圖片URL、價(jià)格。本發(fā)明使工作更加直觀(guān),方便了相關(guān)操作,降低了差錯(cuò)率,提高了工作效率。
文檔編號(hào)G06F17/30GK102495847SQ20111036393
公開(kāi)日2012年6月13日 申請(qǐng)日期2011年11月16日 優(yōu)先權(quán)日2011年11月16日
發(fā)明者劉崟, 吳浩苗 申請(qǐng)人:浙江盤(pán)石信息技術(shù)有限公司