WebMagic功能——XPath、CSS选择器、正则表达式 || 抽取元素API、获取结果API || 获取链接||使用Pipeline保存结果
WebMagic功能
實現PageProcessor
WebMagic里主要使用了三種抽取技術:XPath、正則表達式和CSS選擇器。另外,對于JSON格式的內容,可使用JsonPath進行解析。
XPath
CSS選擇器
CSS選擇器是與XPath類似的語言。它比XPath寫起來要簡單一些,但是如果寫復雜一點的抽取規則,就相對要麻煩一點。
正則表達式
正則表達式則是一種通用的文本抽取語言。在這里一般用于獲取url地址。
抽取元素API
Selectable相關的抽取元素鏈式API是WebMagic的一個核心功能。使用Selectable接口,可以直接完成頁面元素的鏈式抽取,也無需去關心抽取的細節。
在剛才的例子中可以看到,page.getHtml()返回的是一個Html對象,它實現了Selectable接口。這個接口包含的方法分為兩類:抽取部分和獲取結果部分。
獲取結果API
當鏈式調用結束時,我們一般都想要拿到一個字符串類型的結果。這時候就需要用到獲取結果的API了。
一條抽取規則,無論是XPath、CSS選擇器或者正則表達式,總有可能抽取到多條元素。WebMagic對這些進行了統一,可以通過不同的API獲取到一個或者多個元素。
???????獲取鏈接
有了處理頁面的邏輯,我們的爬蟲就接近完工了,但是現在還有一個問題:一個站點的頁面是很多的,一開始我們不可能全部列舉出來,于是如何發現后續的鏈接,是一個爬蟲不可缺少的一部分。
???????使用Pipeline保存結果
WebMagic用于保存結果的組件叫做Pipeline。我們現在通過“控制臺輸出結果”這件事也是通過一個內置的Pipeline完成的,它叫做ConsolePipeline。
那么,我現在想要把結果用保存到文件中,怎么做呢?只將Pipeline的實現換成"FilePipeline"就可以了
???????
總結
以上是生活随笔為你收集整理的WebMagic功能——XPath、CSS选择器、正则表达式 || 抽取元素API、获取结果API || 获取链接||使用Pipeline保存结果的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Selector选择器概述||Selec
- 下一篇: 爬虫的配置、启动和终止