如何用Python爬虫高效抓取美团酒店数据?
- 内容介绍
- 文章标签
- 相关推荐
本文共计539个文字,预计阅读时间需要3分钟。
一、分析网页网页的页面是由HTML+JavaScript渲染而成的,我们看到的页面内容都是在网页加载后执行JavaScript代码生成的。因此,这些数据并不直接存在于原始的HTML代码中,而是通过JavaScript动态生成的。
一、分析网页
网站的页面是 JavaScript 渲染而成的,我们所看到的内容都是网页加载后又执行了JavaScript代码之后才呈现出来的,因此这些数据并不存在于原始 HTML 代码中,而 requests 仅仅抓取的是原始 HTML 代码。抓取这种类型网站的页面数据,解决方案如下:
分析 Ajax,很多数据可能是经过 Ajax 请求时候获取的,所以可以分析其接口。
在XHR里可以找到,Request URL有几个关键参数,uuid和cityId是城市标识,offset偏移量可以控制翻页,分析网页发现,第x页的offset为:(x-1)*20,limit表示每页有20条信息,startDay和endDay为当前的日期。
在Preview里可以找到每页的20条信息
模拟JavaScript渲染过程,直接抓取渲染后的结果。
本文共计539个文字,预计阅读时间需要3分钟。
一、分析网页网页的页面是由HTML+JavaScript渲染而成的,我们看到的页面内容都是在网页加载后执行JavaScript代码生成的。因此,这些数据并不直接存在于原始的HTML代码中,而是通过JavaScript动态生成的。
一、分析网页
网站的页面是 JavaScript 渲染而成的,我们所看到的内容都是网页加载后又执行了JavaScript代码之后才呈现出来的,因此这些数据并不存在于原始 HTML 代码中,而 requests 仅仅抓取的是原始 HTML 代码。抓取这种类型网站的页面数据,解决方案如下:
分析 Ajax,很多数据可能是经过 Ajax 请求时候获取的,所以可以分析其接口。
在XHR里可以找到,Request URL有几个关键参数,uuid和cityId是城市标识,offset偏移量可以控制翻页,分析网页发现,第x页的offset为:(x-1)*20,limit表示每页有20条信息,startDay和endDay为当前的日期。
在Preview里可以找到每页的20条信息
模拟JavaScript渲染过程,直接抓取渲染后的结果。

