1. 程式人生 > >Python爬蟲實戰--TripAdvisor爬蟲

Python爬蟲實戰--TripAdvisor爬蟲

目標站點分析
目標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 歡迎大家一起交流學習