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 欢迎大家一起交流学习

猜你喜欢

转载自blog.csdn.net/m0_37903789/article/details/84074856