PHP 程序员如何设计一个爬虫程序
生活随笔
收集整理的這篇文章主要介紹了
PHP 程序员如何设计一个爬虫程序
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
原文鏈接:PHP 程序員如何設(shè)計(jì)一個(gè)爬蟲(chóng)程序
A8U幾年前接過(guò)一個(gè)項(xiàng)目,類(lèi)似一個(gè) PHP 爬蟲(chóng)程序,做一個(gè)微博輿情分析系統(tǒng):要爬取新浪微博,用特定關(guān)鍵詞搜索中的頁(yè)面的微博內(nèi)容。
那是我第一次接觸網(wǎng)絡(luò)爬蟲(chóng),根本沒(méi)有思路,也不了解什么Scrapy等公開(kāi)的爬蟲(chóng)開(kāi)源項(xiàng)目,于是乎甩膀子自己開(kāi)干。(當(dāng)時(shí)微博的api不支持搜索) 一個(gè)禮拜后,利用HttpClient簡(jiǎn)單實(shí)現(xiàn)了爬取一個(gè)網(wǎng)頁(yè),當(dāng)時(shí)興高采烈的以為核心問(wèn)題已經(jīng)解決,于是乎放慢了項(xiàng)目開(kāi)發(fā)的速度; 之后的某一天,猛地發(fā)現(xiàn),新浪微博搜索頁(yè)面,不登錄是根本無(wú)法讀到的,當(dāng)時(shí)已經(jīng)快接近最后deadline,而我給后面預(yù)留的時(shí)間是用來(lái)寫(xiě)Web界面的,當(dāng)時(shí)真的汗都下來(lái)了;之后的每一天一起床,巨大的壓迫感逼著我全力尋找解決辦法; 一開(kāi)始,試著去模擬登錄,后來(lái)發(fā)現(xiàn),他的登錄模塊是用JavaScript通過(guò)Ajax來(lái)Post的,而且通過(guò)一大串復(fù)雜的javaScript代碼生成了某個(gè)隨機(jī)的key post上去。難不成我得去實(shí)現(xiàn)個(gè)JavaScript V8引擎? 再后來(lái),突然靈光一現(xiàn),想到用手機(jī)網(wǎng)頁(yè)試試,結(jié)果手機(jī)網(wǎng)頁(yè)沒(méi)有用到Ajax,哈哈,高興壞了,搞了3天終于搞定了,能夠爬取任意關(guān)鍵詞的搜索信息了,再后來(lái),我把項(xiàng)目順利delive了。 然后我把爬蟲(chóng)代碼共享給了我的同事。 ... 一個(gè)月后,他告訴我,某網(wǎng)站(cl)所有的bt種子都被他搞到了,瞬間無(wú)語(yǔ)。?原文鏈接:PHP 程序員如何設(shè)計(jì)一個(gè)爬蟲(chóng)程序
總結(jié)
以上是生活随笔為你收集整理的PHP 程序员如何设计一个爬虫程序的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何批量查询PR值、百度权重、百度快照及
- 下一篇: php怎么运行网页_PHP的作用是什么?