如何用python爬蟲分析動態網頁的商品資訊?
我們在上篇提到,平時的購物介面也屬於動態網頁。上面很多同型別的商品價格是不同的,我們能不能用python爬蟲把這個資訊整理收集出來呢?有些小夥伴看到以前程式碼模組過多,本次採集的商品資訊量也很大就有了退縮的想法。其實本篇文章的程式碼都不是很長,不信的小夥伴可以跟著小編繼續往下看:
先安裝Puppeteer庫,用到的也就只有這個庫:
npm install puppeteer
連結網頁也非常簡單,只需要幾行程式碼:
const puppeteer = require('puppeteer') //啟動瀏覽器 const browers = await puppeteer.launch() //啟動新頁面 const page = await browers.newPage() //連結網址 await page.goto(url)
拿到了同類所有商品的標籤資訊,接下來開始分析資訊。獲取裡面所有商品的名稱,然後對照關鍵字是否存在,如果存在則將headless改為false彈出視窗提醒,如果不存在則在半小時後再次連結。Puppeteer提供了一個等待命令page.waitFor(),不僅可以按時間等待,也可以按某個元素的載入進度進行等待。
const goods = page.$$eval('#auctionRecommend > div.mc > ul > li', el => { //錯誤和關鍵字不存在都會返回false try { for (let i = 0; i < el.length; i++) { let n = el[i].querySelector('div.p-name').textContent if(n.includes('妙控板')){ return true } else { return false } } } catch (error) { return false } }) if(!bool){ return console.log('網頁已開啟,不再監控') } //根據goods裡面的回撥函式返回ture或false來決定是否開啟瀏覽器介面 await goods.then(async (b) => { if(b){ console.log('有貨了!') await page.waitFor(2000) await browers.close() return requestUrl(false) } else { console.log('還沒貨') console.log('三十分鐘後再嘗試') await page.waitFor(1800000) await browers.close() return requestUrl(true) } })
到這一步我們就可以對購物介面上的商品資訊全部收集好了,隨後想分析商品價格或資訊之類的過程都變得很容易。剛才還在擔心程式碼過長的小夥伴,現在可以放心的使用啦~更多Python學習指路:。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/1762/viewspace-2832045/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- python 爬蟲如何爬取動態生成的網頁內容Python爬蟲網頁
- Python爬蟲二:抓取京東商品列表頁面資訊Python爬蟲
- Python爬蟲實戰:爬取淘寶的商品資訊Python爬蟲
- 爬蟲Selenium+PhantomJS爬取動態網站圖片資訊(Python)爬蟲JS網站Python
- Python爬蟲爬取淘寶,京東商品資訊Python爬蟲
- Python網路爬蟲抓取動態網頁並將資料存入資料庫MYSQLPython爬蟲網頁資料庫MySql
- 如何用Python爬資料?(一)網頁抓取Python網頁
- Python靜態網頁爬蟲專案實戰Python網頁爬蟲
- 爬蟲例項-淘寶頁面商品資訊獲取爬蟲
- python爬蟲---網頁爬蟲,圖片爬蟲,文章爬蟲,Python爬蟲爬取新聞網站新聞Python爬蟲網頁網站
- 「資料分析」2種常見的反爬蟲策略,資訊驗證和動態反爬蟲爬蟲
- Python 爬蟲實戰之爬拼多多商品並做資料分析Python爬蟲
- Python3 | 簡單爬蟲分析網頁元素Python爬蟲網頁
- C#爬取動態網頁上的資訊:B站主頁C#網頁
- 動態ip代理教你:如何用爬蟲實現前端頁面渲染爬蟲前端
- python爬蟲抓取哈爾濱天氣資訊(靜態爬蟲)Python爬蟲
- [Python3網路爬蟲開發實戰] 7-動態渲染頁面爬取-4-使用Selenium爬取淘寶商品Python爬蟲
- python 爬蟲網頁登陸Python爬蟲網頁
- 爬蟲進階——動態網頁Ajax資料抓取(簡易版)爬蟲網頁
- python網路爬蟲_Python爬蟲:30個小時搞定Python網路爬蟲視訊教程Python爬蟲
- 蘇寧易購網址爬蟲爬取商品資訊及圖片爬蟲
- [Python] 網路爬蟲與資訊提取(1) 網路爬蟲之規則Python爬蟲
- python爬蟲--招聘資訊Python爬蟲
- 如何用Python網路爬蟲爬取網易雲音樂歌曲Python爬蟲
- 《網頁爬蟲》網頁爬蟲
- python網路爬蟲(7)爬取靜態資料詳解Python爬蟲
- 不會Python爬蟲?教你一個通用爬蟲思路輕鬆爬取網頁資料Python爬蟲網頁
- Python爬蟲抓取股票資訊Python爬蟲
- 3天學會網頁爬蟲進行資料分析網頁爬蟲
- 爬蟲抓取網頁資料原理爬蟲網頁
- ferret 爬取動態網頁網頁
- Python爬蟲訓練:爬取酷燃網視訊資料Python爬蟲
- Python 從零開始爬蟲(六)——動態爬取解決方案 之 手動分析Python爬蟲
- Python爬蟲之小說資訊爬取與資料視覺化分析Python爬蟲視覺化
- Python爬蟲動態ip代理防止被封的方法Python爬蟲
- Python網路爬蟲第三彈《爬取get請求的頁面資料》Python爬蟲
- python爬蟲:使用BeautifulSoup修改網頁內容Python爬蟲網頁
- [Python3網路爬蟲開發實戰] 7-動態渲染頁面爬取-1-Selenium的使用Python爬蟲