你的Py教練Mike
搜尋
搜尋此網誌
快速搞懂Python網頁爬蟲爬取AJAX動態網頁的秘訣
10月 04, 2020
Photo by LinkedIn Sales Navigator on Unsplash
在使用Python網頁爬蟲爬取網頁時,有些網頁為了提升使用體驗及維持執行效能,會使用AJAX的技術,
非同步向伺服器傳送參數,取得資料來進行顯示,
使用者不會感受到畫面有任何的閃爍或停頓,依然能夠正常的使用網頁。
不過想要爬取這種類型的網頁,點擊滑鼠右鍵檢視原始碼時,會看到滿滿的Unicode編碼資料,沒有HTML標籤,這時候要來爬取網頁時,會完全抓不到資料。
由於筆者在爬取
KKday網站
的一日遊票券時,就是遇到這樣的情況,所以想藉此來和大家分享Python網頁爬蟲該如何爬取AJAX類型的網頁,其中的開發流程如下:
分析網頁
分析AJAX回傳結果
開發Python網頁爬蟲

一、分析網頁
首先,前往
KKday網站
,假設在搜尋的地方輸入「新竹市」進行搜尋後,在網頁左側的「所有商品類別」中,選擇「觀光旅行」下的「一日遊」,就可以查到新竹市一日遊的相關票券,如下圖:
這時候,點擊滑鼠右鍵檢視網頁原始碼時,會完全找不到網頁上所顯示的票券名稱,都是Unicode編碼,這就是典型的

Source: [Python爬蟲教學]快速搞懂AJAX動態載入網頁的爬取秘訣