日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
八大神奇的網(wǎng)絡(luò)爬取庫與工具

網(wǎng)絡(luò)爬取(Web scraping,請?jiān)斠姡篽ttp://www.prowebscraper.com/blog/web-scraping-using-php/)是普通商業(yè)網(wǎng)站的常規(guī)功能之一。不同的網(wǎng)站在不同的應(yīng)用場景下,會(huì)用到不同的爬取任務(wù),其中包括:產(chǎn)品信息和股票價(jià)格等方面。

成都創(chuàng)新互聯(lián)長期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為云龍企業(yè)提供專業(yè)的成都做網(wǎng)站、網(wǎng)站建設(shè),云龍網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

與此同時(shí),在網(wǎng)站系統(tǒng)的后端開發(fā)中,網(wǎng)絡(luò)爬取也是備受關(guān)注。在程序員的圈子內(nèi),您會(huì)經(jīng)常聽到:又有人開發(fā)創(chuàng)建了高質(zhì)量的解析器或“爬蟲”之類的新聞。

在本文中,我們將和您探討一些實(shí)用的網(wǎng)絡(luò)爬取庫與工具,以滿足您直接抓取網(wǎng)站信息和數(shù)據(jù)的業(yè)務(wù)需求。

在PHP環(huán)境中,您可以通過如下工具庫,來進(jìn)行與網(wǎng)絡(luò)抓取相關(guān)的各項(xiàng)操作:

  1. Goutte
  2. Simple HTML DOM
  3. htmlSQL
  4. cURL
  5. Requests
  6. HTTPful
  7. Buzz
  8. Guzzle

1. Goutte

簡介:

  • Goutte庫的神奇之處在于:它可以為您提供如何通過使用PHP技術(shù),來抓取各種內(nèi)容的詳細(xì)支持。
  • 基于Symfony框架的Goutte,是一種網(wǎng)站爬取類別的專用工具庫。
  • Goutte的實(shí)用之處在于:它不但提供了各種可用來抓取網(wǎng)站信息的API,而且能夠從HTML和XML的響應(yīng)信息中抓取各種數(shù)據(jù)。
  • Goutte持有MIT頒發(fā)的許可證。

特征:

  • 適用于大型項(xiàng)目。
  • 基于OOP(面向?qū)ο蟮某绦蛟O(shè)計(jì))。
  • 具有中等速度的解析能力。

環(huán)境要求:

需要具有PHP 5.5以上和Guzzle 6以上(見下文)的環(huán)境。

文檔鏈接:

https://goutte.readthedocs.io/en/latest/

擴(kuò)展閱讀:

https://menubar.io/php-scraping-tutorial-scrape-reddit-with-goutte

2. Simple HTML DOM

簡介:

  • HTML DOM解析器是由PHP 5以上的版本編寫而成。其優(yōu)勢在于:能夠讓您輕松、便捷地通過訪問和使用HTML,來開展工作。
  • 通過它,您可以像使用jQuery那樣,快速地在HTML頁面上找到那些帶有選擇器的標(biāo)簽。
  • 您可以僅使用一行HTML代碼,來實(shí)現(xiàn)內(nèi)容的抓取。
  • 與本文介紹到的其他工具庫相比,它的運(yùn)行速度并不算快。
  • Simple HTML DOM持有MIT頒發(fā)的許可證。

特征:

  • 它能夠支持那些無效的HTML。

環(huán)境要求:

需要具有PHP 5以上的環(huán)境。

文檔鏈接:

http://simplehtmldom.sourceforge.net/manual.htm

擴(kuò)展閱讀:

http://www.prowebscraper.com/blog/web-scraping-using-php/

3. htmlSQL

簡介:

  • 它實(shí)際上是一個(gè)實(shí)驗(yàn)性的PHP庫。它的實(shí)用之處在于:通過它,您能夠使用類似SQL的語法,去訪問HTML的各種數(shù)值。因此,您可以在不需要編寫復(fù)雜的函數(shù)、或正則表達(dá)式的情況下,方便地獲取某些特定值。
  • 如果您是SQL的忠實(shí)粉絲,那么您一定也會(huì)喜歡這款實(shí)驗(yàn)性的爬取庫。
  • 您可以將它運(yùn)用到任何類型的雜項(xiàng)任務(wù)、以及對于網(wǎng)頁的快速解析任務(wù)之中。
  • 雖然早在2006年就停止了更新與支持,但是htmlSQL仍然是一款可靠的解析工具和抓取庫。
  • htmlSQL持有BSD頒發(fā)的許可證。

特征:

  • 它能夠提供相對快速的解析訪問,但功能比較有限。

環(huán)境要求:

  • 各種風(fēng)格的PHP 4以上環(huán)境。
  • Snoopy的PHP類(版本1.2.3,需選用Web傳輸)。

文檔鏈接:

https://github.com/hxseven/htmlSQL

擴(kuò)展閱讀:

https://github.com/hxseven/htmlSQL/tree/master/examples

4. cURL

簡介:

  • 眾所周知,cURL是一款非常流行的、可用于從網(wǎng)頁中提取數(shù)據(jù)的工具庫。它屬于PHP的內(nèi)置組件。
  • 作為一個(gè)標(biāo)準(zhǔn)的PHP庫,它并不包含任何第三方的文件和類。

環(huán)境要求:

  • 在使用PHP的cURL功能時(shí),您只需要安裝?libcurl包(請?jiān)斠奾ttp://curl.haxx.se/)便可。當(dāng)然,作為PHP,它需要用到libcurl的7.10.5或更高版本。

文檔鏈接:

http://php.net/manual/ru/book.curl.php

擴(kuò)展閱讀:

http://scraping.pro/scraping-in-php-with-curl/

5.Requests

簡介:

  • 它是一個(gè)用PHP編寫的HTTP庫。
  • 它的API主要基于那些優(yōu)秀的Requests Python庫。
  • 您能夠通過Requests來發(fā)送HEAD、GET、POST、PUT、DELETE以及PATCH HTTP等請求。
  • 通過Requests,您可以使用簡單數(shù)組,來添加標(biāo)題、表單數(shù)據(jù)、多個(gè)文件和參數(shù)、并能以相同的方式訪問各種響應(yīng)數(shù)據(jù)。
  • Requests持有ISC頒發(fā)的許可證。

特征:

  • 持有國際域名和URL。
  • 支持瀏覽器式的SSL驗(yàn)證。
  • 提供基本和摘要式的身份驗(yàn)證。
  • 自解壓功能(Automatic Decompression)。
  • 連接超時(shí)管理。

環(huán)境要求:

需要具有PHP 5.2以上的版本。

參考文檔:

https://github.com/rmccue/Requests/blob/master/docs/README.md

6. HTTPful

簡介:

  • HTTPful是一個(gè)非常簡單的PHP庫。由于其設(shè)計(jì)初衷是使得HTTP具有可讀性,因此它本身既可以被作為鏈接,又具備一定的可讀性。
  • 它被公認(rèn)為非常實(shí)用的原因在于:它使得開發(fā)人員專注于與API的交互,而不必去關(guān)注那些set_opt頁面。同時(shí),它也是一款十分優(yōu)秀的PHP REST客戶端。
  • HTTPful持有MIT頒發(fā)的許可證。

特征:

  • 可讀式地支持多種HTTP方法(GET、PUT、POST、DELETE、HEAD、PATCH和OPTIONS)。
  • 可自定義標(biāo)題(Headers)。
  • 能夠自動(dòng)且“智能”地進(jìn)行解析。
  • 能夠自動(dòng)進(jìn)行載荷的序列化(Payload Serialization)。
  • 支持基本認(rèn)證。
  • 提供客戶端證書的身份驗(yàn)證。
  • 帶有請求的“模板”。

環(huán)境要求:

需要具有PHP 5.3以上的版本。

文檔鏈接:

http://phphttpclient.com/docs/

7.Buzz

簡介:

  • Buzz是一種實(shí)用的輕量級(jí)工具庫,您可以用它來發(fā)出HTTP請求。
  • 雖然Buzz的設(shè)計(jì)比較簡單,但是它具有各種Web瀏覽器的特性。
  • Buzz持有MIT頒發(fā)的許可證。

特征:

  • 簡單的API。
  • 具有高性能。

環(huán)境要求:

需要具有PHP 7.1版本。

文檔鏈接:

https://github.com/kriswallsmith/Buzz/blob/master/doc/index.md

擴(kuò)展閱讀:

https://github.com/kriswallsmith/Buzz/tree/master/examples

8. Guzzle

簡介:

  • 作為一款非常實(shí)用的PHP HTTP客戶端,Guzzle能夠讓您以簡單的方式發(fā)送各種HTTP請求。同時(shí),它也能很方便地與Web服務(wù)相集成。

特征:

  • 通過其簡單的界面,您可以構(gòu)建出各種查詢字符串、POST請求、大量的流式上傳與下載、HTTP Cookie以及可上傳的JSON數(shù)據(jù)。
  • 它可以在同一個(gè)接口的幫助下,以同步和異步的方式發(fā)送各種請求。
  • 它能夠?qū)SR-7接口運(yùn)用于各種請求、響應(yīng)和數(shù)據(jù)流之中。您可以籍此使用Guzzle的其他PSR-7兼容庫。
  • 通過抽象出底層的HTTP傳輸,您可以用它來編寫出獨(dú)立于環(huán)境和傳輸?shù)某绦虼a,即:不會(huì)對cURL、PHP流、套接字或非阻塞事件的循環(huán)產(chǎn)生強(qiáng)依賴性。
  • 其中間件系統(tǒng)使您能夠擴(kuò)充和組合客戶端的各種行為。

環(huán)境要求:

需要具有PHP 5.3.3以上版本。

文檔鏈接:

http://docs.guzzlephp.org/en/stable/

擴(kuò)展閱讀:

Scraping products from Walmart with PHP, Guzzle, Crawler and Doctrine

結(jié)論

綜上所述,每一種網(wǎng)絡(luò)爬取工具都具有自己的特點(diǎn)和環(huán)境要求。希望上述羅列能夠幫助您更好地了解這些PHP庫與工具。您可以從中挑選出適合于自己網(wǎng)站系統(tǒng)的工具進(jìn)行試用與調(diào)試。


文章題目:八大神奇的網(wǎng)絡(luò)爬取庫與工具
本文來源:http://www.5511xx.com/article/cdhsjoo.html