溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

python中怎么用JS加載加快爬蟲(chóng)獲取

發(fā)布時(shí)間:2020-11-30 10:48:23 來(lái)源:億速云 閱讀:263 作者:小新 欄目:編程語(yǔ)言

這篇文章主要介紹python中怎么用JS加載加快爬蟲(chóng)獲取,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

python的requests庫(kù)只能爬取靜態(tài)頁(yè)面,爬取不了動(dòng)態(tài)加載的頁(yè)面。使用JS加載數(shù)據(jù)方式,能提高爬蟲(chóng)門(mén)檻。

爬蟲(chóng)方法:

抓包獲取數(shù)據(jù)url

通過(guò)抓包方式可以獲取數(shù)據(jù)的請(qǐng)求url,再通過(guò)分析和更改url參數(shù)來(lái)進(jìn)行數(shù)據(jù)的抓取。

示例:

1.看 https://image.baidu.com這部分的包??梢钥吹剑@部分包里面,search下面的那個(gè) url和我們?cè)L問(wèn)的地址完全是一樣的,但是它的response卻包含了js代碼。

2.當(dāng)在動(dòng)物圖片首頁(yè)往下滑動(dòng)頁(yè)面,想看到更多的時(shí)候,更多的包出現(xiàn)了。從圖片可以看到,下滑頁(yè)面后得到的是一連串json數(shù)據(jù)。在data里面,可以看到thumbURL等字樣。它的值是一個(gè)url。這個(gè)就是圖片的鏈接。

3. 打開(kāi)一個(gè)瀏覽器頁(yè)面,訪問(wèn)thumbURL=https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1968180540,4118301545&fm=27&gp=0.jpg,發(fā)現(xiàn)搜索結(jié)果里的圖片。

4. 根據(jù)前面的分析,就可以知道,用瀏覽器訪問(wèn)這個(gè)鏈接確定他是公開(kāi)的。

5. 最后就可以尋找URL的規(guī)律,對(duì)URL進(jìn)行構(gòu)造便可獲取所有照片。

使用selenium

通過(guò)使用selenium來(lái)實(shí)現(xiàn)模擬用戶(hù)操作瀏覽器,然后結(jié)合BeautifulSoup等包來(lái)解析網(wǎng)頁(yè)通過(guò)這種方法獲取數(shù)據(jù),簡(jiǎn)單,也比較直觀,缺點(diǎn)是速度比較慢。

以上是“python中怎么用JS加載加快爬蟲(chóng)獲取”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI