網(wǎng)站抓取精靈火車采集器是目前功能最全面的采集軟件,使用者只需稍加學(xué)習(xí)即可快速上手,這里是火車采集器V9 的操作術(shù)語解釋。
1.采集任務(wù)
采集任務(wù)是火車采集器中對(duì)于數(shù)據(jù)采集和數(shù)據(jù)發(fā)布任務(wù)的完整配置,包含采集規(guī)則和發(fā)布模塊。
2.采集規(guī)則
即我們對(duì)如何采集和采集什么的問題給出一些設(shè)置讓采集器按照設(shè)置的規(guī)則來執(zhí)行,這個(gè)設(shè)置可以從火車采集器里面導(dǎo)出保存為.ljobx文件, 也可以再次導(dǎo)入火車采集器。
3.發(fā)布模塊
在火車采集器中,發(fā)布模塊是對(duì)“將已經(jīng)采集到的數(shù)據(jù)發(fā)布到哪里”進(jìn)行的設(shè)置。包括WEB在線發(fā)布模塊和數(shù)據(jù)庫發(fā)布模塊,其設(shè)置分別可以導(dǎo)出保存為.wpm文件 和.dbm文件,并可以再次導(dǎo)入火車采集器,多次使用。
4.發(fā)布接口
發(fā)布接口是一個(gè)小型的頁面程序,通常和WEB在線發(fā)布模塊配合使用來滿足用戶的特定需求。即采集器將采集的數(shù)據(jù)發(fā)送到發(fā)布接口文件中,接口文件得到數(shù)據(jù),
并按照用戶特定需求靈活地處理數(shù)據(jù)。
5.標(biāo)簽
是指用來提取某項(xiàng)內(nèi)容信息的一個(gè)字段名字,由用戶在編輯規(guī)則的時(shí)候指定,比如標(biāo)題、手機(jī)號(hào)、郵件、作者,內(nèi)容標(biāo)簽采集到的信息在發(fā)布模塊中就可以通過
該標(biāo)簽名對(duì)應(yīng)獲取到,格式為[標(biāo)簽:標(biāo)簽名]如[標(biāo)簽:標(biāo)題]。標(biāo)簽在火車采集器里面有分為兩種:分別為列表頁標(biāo)簽和內(nèi)容頁標(biāo)簽,顧名思義列表頁標(biāo)簽就是在獲取列表頁時(shí)(即采網(wǎng)址時(shí))就獲取到內(nèi)容信息,內(nèi)容頁標(biāo)簽是在獲取內(nèi)容頁或多頁內(nèi)容時(shí)(采內(nèi)容)才獲取內(nèi)容信息。
注:通常還有一種說法為 html標(biāo)簽,這里的標(biāo)簽是指一些html代碼里面的屬性標(biāo)識(shí)符,如:<a href里面的a標(biāo)簽,里面的font標(biāo)簽為html標(biāo)簽,該術(shù)語在內(nèi)容處理的html標(biāo)簽排除項(xiàng)出現(xiàn)。
6.(*)
在使用火車采集器時(shí)經(jīng)常會(huì)遇到這個(gè)符號(hào),它是變量的通用符號(hào),如果我們只需要知道這個(gè)變量的變化規(guī)律,而不需要關(guān)心這個(gè)變量到底是什么,這時(shí)就可使用這個(gè) 符號(hào)代替。
7.[參數(shù)]
用來匹配某項(xiàng)準(zhǔn)備提取信息的標(biāo)記標(biāo)簽,如想要在代碼中提取組合出某種格式。以從代碼"mClk(this,'108484','134217', '168475','1');"中提取組合出新 的地址格式為例。"mClk(this,'[參數(shù)]','[參數(shù)]', '[參數(shù)]','1'); ",按照次序,108484參數(shù)就是參數(shù)1,依次類推。實(shí)際需要的地址為以下的地址格式: bbs/read.php?id=[參數(shù)1]& sort=[參數(shù)3]&action=[參數(shù)2],上面代碼中的3個(gè)參數(shù)和下面地址中的id,sort和action參數(shù)要對(duì)應(yīng)相應(yīng)的值,次序不要顛倒。 這樣就組合成了新的地址格式。
8.起始網(wǎng)址
用來獲取下級(jí)鏈接地址的入口網(wǎng)址,可以為一條或多條,可以通過添加起始網(wǎng)址向?qū)砑油袷蕉鄺l網(wǎng)址或?qū)胛谋揪W(wǎng)址。如果沒有定義多級(jí)網(wǎng)址的獲取方法, 這些地址即作為內(nèi)容頁網(wǎng)址進(jìn)行內(nèi)容采集。
9.多級(jí)網(wǎng)址
依次根據(jù)列表里面的多級(jí)網(wǎng)址順序采集分析地址,通過依次采集分析到最后一級(jí)得到內(nèi)容頁地址。多級(jí)網(wǎng)址的獲取可以使用頁面自動(dòng)分析和手動(dòng)獲取的方法采集 下級(jí)網(wǎng)址,在采集的過程中,可以同時(shí)采集列表分頁及提取列表頁附加參數(shù)。
10.Cookie
是在Http請(qǐng)求訪問中記錄您的用戶信息即登錄信息的一段用于與服務(wù)器進(jìn)行交互的字符串。在瀏覽器中使用時(shí)通常還會(huì)以文本形式記錄到您的IE緩存目錄中, 以便下次在有效期內(nèi)不用輸入用戶信息即可繼續(xù)訪問驗(yàn)證權(quán)限的網(wǎng)頁。
11.User-Agent
瀏覽器標(biāo)識(shí),是用來向服務(wù)器通知您使用的客戶端類型,在某些需要登錄的網(wǎng)頁可能需要同時(shí)驗(yàn)證Cookie和User-Agent,所以需要您將其設(shè)置為與本機(jī)瀏覽器 同樣的格式。
12.分頁
列表或內(nèi)容頁面較長,分成多個(gè)頁面顯示,采集時(shí)需要將所有子頁的內(nèi)容組合起來,這樣的子頁面就是分頁(列表分頁或內(nèi)容分頁)。
13.多頁
有些情況下,需要采集一個(gè)頁面對(duì)應(yīng)的網(wǎng)址,圖片等內(nèi)容時(shí),需要另外打開一個(gè)新的頁面才能采集到這些信息,這些另外打開的頁面則稱為多頁。
14.網(wǎng)頁編碼
是在網(wǎng)頁中指定其特定字符編碼格式的庫,例如一般在網(wǎng)頁中都要有如下一句:<meta http-equiv="Content-Type"content="text/html;charset=gb2312">,
這樣的字句指示此網(wǎng)頁的字符集編碼是GB2312?;疖嚥杉鲗?duì)一般的網(wǎng)頁可以做到自動(dòng)識(shí)別,也羅列出了大部分的網(wǎng)頁編碼格式,可以直接在采集器中手動(dòng)選擇指定
相應(yīng)的編碼格式。
15.代理
是指網(wǎng)絡(luò)中的代理服務(wù)器,可以代理網(wǎng)絡(luò)用戶去取得所需要的網(wǎng)絡(luò)信息。代理的功能有可以突破自身ip的訪問限制訪問國外站點(diǎn),訪問一些單位或團(tuán)體內(nèi)部資源, 突破電信的ip封鎖和隱藏真實(shí)的ip等。
16.插件
在火車采集器,插件是指可以對(duì)采集到的數(shù)據(jù)進(jìn)行特定處理的一個(gè)外部程序,編寫好插件后,采集器可以把數(shù)據(jù)傳遞給插件,然后對(duì)數(shù)據(jù)進(jìn)行處理, 再把數(shù)據(jù)傳給采集器。(可自行開發(fā),也可聯(lián)系客服定制。)
17.Cron表達(dá)式
在火車采集器計(jì)劃任務(wù)管理器的設(shè)置中,可以設(shè)置完整的cron表達(dá)式來表示對(duì)任務(wù)的計(jì)劃執(zhí)行。它是一個(gè)由6或7個(gè)子表達(dá)式組成的字符串。每一個(gè)表達(dá) 式代表一個(gè)域,每個(gè)域描述了一個(gè)單獨(dú)的日程細(xì)節(jié)且每個(gè)域之間使用空格分隔,它由兩種格式組成。
Seconds Minutes Hours DayofMonth Month DayofWeek Year
Seconds Minutes Hours DayofMonth Month DayofWeek
一個(gè)Cron表達(dá)式至少有6或7個(gè)有空格分隔的時(shí)間元素,每個(gè)時(shí)間元素都使用數(shù)字,但還可以出現(xiàn)如下特殊字符,他們的含義分別表示:
1.Seconds 秒 (允許值為0-59,允許的特殊符號(hào),- * /)
2.Minutes 分鐘 (允許值為0-59,允許的特殊符號(hào),- * /)
3.Hours 小時(shí) (允許值為0-23,允許的特殊符號(hào),- * /)
4.Day-of-Month 月中的天 (允許值為1-31,允許的特殊符號(hào),- * / ? L W C)
5.Month 月 (允許值為1-12或者JAN-DEC,允許的特殊符號(hào),- * /)
6.Day-of-Week 周中的天 (允許值為1-7或者SUN-SAT,允許的特殊符號(hào),- * / ? L C #)
7.Year (optional field) 年(可選的域,允許值為留空或者1970-2099,允許的特殊符號(hào),- * /)
特殊字符含義:
(1) * 表示該域的任意值。如在Minutes域使用,即表示每分鐘都會(huì)觸發(fā)事件。
(2) ? 只能用在DayofMonth和DayofWeek兩個(gè)域。實(shí)際上不會(huì)匹配域的任意值,因?yàn)镈ayofMonth和DayofWeek會(huì)相互影響。如想在 每月的20日觸發(fā)調(diào)度,
不管20日是周幾,則只能使用如下寫法:13 13 15 20 * ?,其中最后一位只能用?,而不能用,如果使用*表示每月的20號(hào)15時(shí)13分13秒不管是周幾都會(huì)觸發(fā),實(shí)際上不是的。
(3) – 表示范圍,如在Minutes域中使用5-20,表示5到20分鐘每分鐘觸發(fā)一次
(4) / 表示起始時(shí)間開始觸發(fā),然后每隔固定時(shí)間觸發(fā)一次。如在Minutes域中使用5/20,表示從分鐘數(shù)5開始每隔20分鐘觸發(fā)一次,結(jié)果25,45,05等分別觸發(fā)一次。
(5) , 表示列出枚舉值。如在Minutes域中使用5,20,則表示5分鐘和20分鐘每分鐘觸發(fā)一次。
(6) L 表示最后,只能出現(xiàn)在DayofMonth和DayofWeek域。
(7) W 表示有效工作日(周一到周五),只能出現(xiàn)在DayofMonth域中,系統(tǒng)將在離指定日期最近的有效工作日觸發(fā)事件。另外,W的最近尋找不會(huì)跨過月份。
(8) # 用于確定每個(gè)月第幾個(gè)星期幾,只能出現(xiàn)在DayofMonth域中。如4#2表示某月的第二個(gè)星期四。
完整的corn表達(dá)式如0 15 08 ? * MON-FRI 表示每周一到周五的早上8點(diǎn)15分開始定時(shí)更新數(shù)據(jù)。
18.任務(wù)網(wǎng)址庫
采集器在文件夾DataLocoySpiderPageUrl下,該站點(diǎn)下的每一個(gè)任務(wù)都會(huì)生成一個(gè)獨(dú)立或公用的網(wǎng)址庫用來對(duì)比網(wǎng)址重復(fù)之用。
19.HTTP請(qǐng)求
瀏覽器打開網(wǎng)頁時(shí)實(shí)際就是發(fā)送一個(gè)又一個(gè)Http請(qǐng)求,火車采集器也一樣,從指定的地址獲取內(nèi)容的過程就是發(fā)送Http請(qǐng)求,然后對(duì)根據(jù)請(qǐng)求得到的內(nèi)容進(jìn)行處理。 當(dāng)瀏覽器向web服務(wù)器發(fā)送請(qǐng)求時(shí),它向服務(wù)器傳遞了一個(gè)數(shù)據(jù)塊,也就是請(qǐng)求信息。Http請(qǐng)求信息由3部分組成:請(qǐng)求方法URI協(xié)議/版本,請(qǐng)求頭(Request Header) 和請(qǐng)求正文。
如下圖:
而客戶就可以從請(qǐng)求的信息中得到有用的數(shù)據(jù)。
初學(xué)者掌握以上術(shù)語后,搭配教程進(jìn)行學(xué)習(xí),很快就可以靈活使用火車采集器V9來實(shí)現(xiàn)網(wǎng)站的高效抓取。