python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法

這篇文章給大家分享的是有關(guān)python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法的內(nèi)容。小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧。

創(chuàng)新互聯(lián):公司2013年成立為各行業(yè)開(kāi)拓出企業(yè)自己的“網(wǎng)站建設(shè)”服務(wù),為1000多家公司企業(yè)提供了專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)、網(wǎng)頁(yè)設(shè)計(jì)和網(wǎng)站推廣服務(wù), 按需網(wǎng)站建設(shè)由設(shè)計(jì)師親自精心設(shè)計(jì),設(shè)計(jì)的效果完全按照客戶的要求,并適當(dāng)?shù)奶岢龊侠淼慕ㄗh,擁有的視覺(jué)效果,策劃師分析客戶的同行競(jìng)爭(zhēng)對(duì)手,根據(jù)客戶的實(shí)際情況給出合理的網(wǎng)站構(gòu)架,制作客戶同行業(yè)具有領(lǐng)先地位的。

python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法

我們?cè)谧鼍W(wǎng)頁(yè)抓取的時(shí)候,一般來(lái)說(shuō)使用urllib和urllib2就能滿足大部分需求。

但是有時(shí)候我們遇見(jiàn)那種使用js動(dòng)態(tài)加載的網(wǎng)頁(yè)。就會(huì)發(fā)現(xiàn)urllib只能抓出一個(gè)部分內(nèi)容空白的網(wǎng)頁(yè)。就像下面百度圖片的結(jié)果頁(yè):

python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法

審查元素之后,發(fā)現(xiàn)百度圖片中,顯示圖片的div為:pullimages

python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法

這個(gè)div里面的內(nèi)容是動(dòng)態(tài)加載的。而使用urllib&urllib2是抓取不到的。

要抓取動(dòng)態(tài)加載的元素,首先考慮使用selenium來(lái)調(diào)用瀏覽器進(jìn)行抓取。

而我們運(yùn)行的環(huán)境是linux,最理想的方法是在無(wú)界面情況下進(jìn)行抓取,所以使用selenium+phantomjs來(lái)進(jìn)行無(wú)界面抓取。

phantomjs是什么呢?它是一個(gè)基于webkit內(nèi)核的無(wú)頭瀏覽器,即沒(méi)有UI界面,即它就是一個(gè)瀏覽器。

selenium和phantomjs的安裝配置可以google,這里就略過(guò)不談了。

代碼如下:

from selenium import webdriver
driver = webdriver.PhantomJS(executable_path='/bin/phantomjs/bin/phantomjs')
#如果不方便配置環(huán)境變量。就使用phantomjs的絕對(duì)路徑也可以
driver.get('http://image.baidu.com/i?ie=utf-8&word=%E5%91%A8%E6%9D%B0%E4%BC%A6')
#抓取了百度圖片,query:周杰倫
driver.page_source 
#這就是返回的頁(yè)面內(nèi)容了,與urllib2.urlopen().read()的效果是類似的,但比urllib2強(qiáng)在能抓取到動(dòng)態(tài)渲染后的內(nèi)容。
driver.quit()

到這里。就抓取動(dòng)態(tài)頁(yè)面成功了。

感謝各位的閱讀!關(guān)于python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

網(wǎng)頁(yè)標(biāo)題:python獲取js動(dòng)態(tài)加載數(shù)據(jù)的方法
當(dāng)前鏈接:http://muchs.cn/article16/gpghdg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供服務(wù)器托管、網(wǎng)站維護(hù)網(wǎng)站建設(shè)、網(wǎng)站排名域名注冊(cè)、手機(jī)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)