Diffbot號稱排名第一的網頁智能解析真有那麼強大嘛?

前言

  很多爬蟲開發者在職業生涯中做得最多的一件事我想應該就是寫parse。有時候面對不同的網站重複寫着大量的解析規則是非常耗時的,像一些新聞網站難道沒有通用的解析算法或者規則嗎?有!比如可能很多爬蟲工程師都用過的newspaper

但是它的主戰場畢竟是英文類的網站,中文的話…

1. 什麼是智能解析

  什麼是智能解析呢?我們聽這個語義大概能知道就是解放爬蟲開發者雙手寫解析規則,而是針對一些頁面專門寫了一套提取規則,常見的可以利用一些算法來完成網頁特定元素定位跟抽取路徑。比如一則新聞網頁,可以通過算法計算出標題是什麼,正文從哪到哪,發佈時間是什麼以及作者在哪個位置等功能
在這裏插入圖片描述

  其實吧,我這個鍵盤俠敲着看似簡單。彷彿我的字語之中完成了一切似的。實際上在現實中這是一個非常艱鉅任務,作爲一個用戶來說看到一篇新聞這個用戶可以快速知道這篇新聞的標題是什麼、發佈時間是什麼、哪部分是正文。如果換做沒有感情的機器,它面臨的是什麼?我也想把我的思想給它,但是現實它不允許~

我們還暫時不能指望它能賦予人類大腦的思維,現在市面上對於智能解析的算法也有那麼幾款,比如我知道的:

  • 基於jieba分詞的newspaper
  • 曾經基於模型打分的Readability
  • 還有Github上基於符合密度提取的算法
  • 然後就是今天說到的Diffbot了

我們可以看到的是智能解析它只是針對HTML頁面做一系列的解析提取,但是要讓機器去做到智能,所需要用到的知識跟技術是非常廣的

曾經我們做新聞解析的時候,也使用過一些開源的解析算法。但是真正面臨實際場景的時候,才知道現實總是這麼無情!你會發現很多千奇百怪的數據跟頁面:

  • 比如新聞的正文如何才能取全?剔除與它無關的信息?
  • 發佈時間不同地區的網站時間呈現都是不一樣的,如何智能匹配?
  • 亂七八糟的特殊字符跟廣告亂入的無恥行爲如何檢測規避?

沒有網站做不到的,只有我們想不到的。我一個鐵汁之前就長期負責改新聞通用的解析規則,頭髮都給整白了
在這裏插入圖片描述
我個人認爲能做到一定水準的智能解析基本會涉及:算法、計算機視覺、NLP、機器學習等多個領域的技術。才能真正打造出附有靈魂的智能體

2. Diffbot是什麼

  Diffbot是國外的一家專門做智能解析服務的公司。它到底是真的有這麼神奇還是吹噓的?各位可以去Diffbot官網看一看,我其實也不知道好不好用,所以我也去註冊了一個賬號體驗了一把它的功能。它們官方曾經做過一個評測,目標則是針對現在市面上使用較廣的智能解析工具及算法,測評的結果當然是Diffbot這位大當家的獨佔第一咯

  Diffbot自2010年以來就致力於提取 Web 頁面數據,並提供許多AP 來自動解析各種頁面。其擁有NLP、機器學習、視覺處理、標記檢查等多種算法庫

Diffbot一直致力於這一方面的服務,畢竟它就是做頁面解析起家的,一直專注這個垂直的領域發展,十年磨一劍!有一定的技術積累跟實力那也是很正常的,可惜呀!沒有開源,咱們可以先體驗一下效果,畢竟這麼多年的研究積累怎麼可能讓我們白嫖呢!

3. 如何使用Diffbot

  但是官方還是有一個福利的,就是可以註冊免費體驗半個月的賬號,驚得我趕緊去註冊了一個賬號,因爲它提供API服務,所以更加便捷,註冊賬號獲取開發者token這個是請求接口的令牌

API接口(參數使用方法等詳情大家見Diffbot官方API使用文檔):

https://api.diffbot.com/v3/article

我這裏也是註冊好了一個白嫖的賬號
在這裏插入圖片描述
然後再找了一個新聞網站請求一下API測試一下效果:

#! coding: utf-8

import requests
import json

#Diffbot API
url = 'https://api.diffbot.com/v3/article'
params = { 
    'token': '044caf0e1032de57a9e4b83e37154f98',
    'url': 'https://mil.news.sina.com.cn/2020-05-22/doc-iirczymk2930805.shtml',
}
response = requests.get(url, params=params)
print(json.dumps(response.json(), indent=4, ensure_ascii=False))

使用非常簡單,把我們需要解析的新聞URL跟我們註冊的Token兩個參數丟進去(我的這個token可以直接測試,15天過後就不能白嫖了,鐵汁只能幫你們到這了

最終的效果就是數據很全,結構很清晰
在這裏插入圖片描述
我們再看看新聞中出現的圖片信息數據解析效果:
在這裏插入圖片描述

4. 總結

愛瑪!花錢的東西用着就是得勁,真香!我把白嫖的Token也貢獻出來了,如果你有點良心的話,別白嫖我的文章了,鐵汁!

5. 致謝

  好了,到這裏又到了跟大家說再見的時候了。我只是一個會寫爬蟲的段子手而已,一個希望有朝一日能夠實現財富自由,能夠早日榮歸故里的遊子罷了。希望我的文章能帶給您知識,帶給您幫助,帶給您歡笑!同時也謝謝您能抽出寶貴的時間閱讀,創作不易,如果您喜歡的話,點個贊再走吧。您的支持是我創作的動力,希望今後能帶給大家更多優質的文章

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章