第9章 综合应用
目前为止,本书介绍的爬虫技术都是应用于一个定制网站,这样可以帮助我们更加专注于学习特定技巧。而在本章中,我们将分析几个真实网站,来看看我们在本书中学过的这些技巧是如何应用的。首先我们使用Google演示一个真实的搜索表单,然后是依赖JavaScript和API的网站Facebook,接下来是典型的在线商店Gap,最后是拥有地图接口的宝马官网。由于这些都是活跃的网站,因此读者在阅读本书时这些网站存在已经发生变更的风险。不过这样也好,因为本章示例的目的是为了向你展示如何应用前面所学的技术,而不是展示如何抓取任何网站。当你选择运行某个示例时,首先需要检查网站结构在示例编写后是否发生过改变,以及当前该网站的条款与条件是否禁止了爬虫。
在本章中,我们将介绍如下主题:
- 抓取Google搜索结果网页;
- 调研Facebook的API;
- 在Gap网站中使用多线程;
- 对宝马经销商定位页面进行逆向工程。
9.1 Google搜索引擎
为了了解我们对CSS选择器知识的使用情况,我们将会抓取Google的搜索结果。根据第4章中Alexa的数据,Google是全世界最流行的网站之一,而且非常方便的是,该网站结构简单,易于抓取。
Google国际化版本可能会根据你的地理位置跳转到指定国家(或地区)的版本。在下述示例中,Google将被设置为罗马尼亚的版本,因此你的结果可能会看起来有些区别。
图9.1所示为Google搜索主页使用浏览器工具加载查看表单元素时的界面。
图9.1
可以看到,搜索查询存储在输入参数 ...
Get 用Python写网络爬虫(第2版) now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.