Python爬蟲實戰--TripAdvisor爬蟲
阿新 • • 發佈:2018-11-23
目標站點分析
目標URL:https://www.tripadvisor.cn/Attractions-g60763-Activities-New_York_City_New_York.html#FILTERED_LIST
明確內容:
在圖中,我們明確爬去的內容為:title,comment, cate(即綠色框中的內容),同時我們也可以看到一些干擾內容,這是我們不需要的內容,需要剔除掉。那我們該如何剔除這些干擾內容呢?(小提示:觀察不同之處)
好了,找好了爬去的內容,下面就是怎麼去爬去所有的頁面呢?
我們看到這裡總共有41個頁面,那我們該怎麼爬完所有的頁面呢?
這裡主要有兩個方案:
1.找尋頁面之間的規律,並依照它的規律去遍歷
2.一直點選下一頁,直到無法點選
這裡實現了方案一:
通過對比,我們發現,頁面似乎很有規律,-oaXX,並且XX是以30為步進單位。我們便可以依照這個規律,去遍歷所有的網頁啦!
for i in range(0, self.max_num):
url = "https://www.tripadvisor.cn/Attractions-g60763-Activities-oa{}-New_York_City_New_York.html".format(i*30)
**動動手**
感興趣的童鞋,試試如何實現方案二吧~
邏輯實現
def run(self): # 1.Find URL for i in range(0, self.max_num): url = self.temp_url.format(i*30) # 2.Send Request, Get Response html = self.parse_url(url) # 3.Get item if html: item = self.parse_html(html) # 4.save information self.save_item(item)
戰績展示
原始碼地址:https://github.com/NO1117/TripAdvisor_Spider
Python交流群:942913325 歡迎大家一起交流學習