随着Internet的飞速发展,互联网中每天都会产生大量的非结构化数据。如何从这些非结构化数据中提取有效信息,供人们在学习和工作中使用呢?这个问题促使网络爬虫技术应运而生。由于Python语言简单易用,而且还提供了优秀易用的第三方库和多样的爬虫框架,所以使得它成为了网络爬虫技术的主力军。近年来,大数据技术发展迅速,数据爬取作为数据分析的一环也显得尤为重要。程序员要进入与数据处理、分析和挖掘等相关的行业,就必须要掌握Python语言及其网络爬虫的运用,这样才能在就业严峻的市场环境中有较强的职场竞争力和较好的职业前景。
目前,图书市场上仅有的几本Python网络爬虫类图书,要么是国外优秀图书,但书籍翻译隐晦,阅读难度大,而且往往由于网络原因,使得书中的案例不能正常使用,因此不适合初学者;要么是国内资料,但质量参差不齐,而且不成系统,同样不适合初学者。整个图书市场上还鲜见一本适合初学者阅读的Python网络爬虫类图书。本书便是基于这个原因而编写。本书从Python语言基础讲起,然后深入浅出地介绍了爬虫原理、各种爬虫技术及22个爬虫实战案例。本书全部选用国内网站作为爬虫案例,便于读者理解和实现,同时也可以大大提高读者对Python网络爬虫项目的实战能力。
本书特色
1.涵盖Windows 7系统第三方库的安装与配置
本书包含Python模块源的配置、第三方库的安装和使用,以及PyCharm的安装和使用。
2.对网络爬虫技术进行了原理性的分析
本书从一开始便对网络连接和爬虫原理做了基本介绍,并对网络爬虫的基本流程做了详细讲解,便于读者理解本书后面章节中的爬虫项目案例。
3.内容全面,应用性强
本书介绍了从单线程到多进程,从同步加载到异步加载,从简单爬虫到框架爬虫等一系列爬虫技术,具有超强的实用性,读者可以随时查阅和参考。
4.项目案例典型,实战性强,有较高的应用价值
本书介绍了22个爬虫项目实战案例。这些案例来源于不同的网站页面,具有很高的应用价值。而且这些案例分别使用了不同的爬虫技术实现,便于读者融会贯通地理解书中介绍的技术。
本书内容
第1章 Python零基础语法入门
本章介绍了Python和PyCharm的安装及Python最为简单的语法基础,包括简单的流程控制、数据结构、文件操作和面向对象的编程思想。
第2章 爬虫原理和网页构造
本章通过介绍网络连接原理,进而介绍了爬虫的原理,讲解了爬虫的基本流程,另外还介绍了如何使用Chrome浏览器认识网页构造和查询网页信息。
第3章 我的第一个爬虫程序
本章主要介绍了安装请求和解析网页的Python第三方库、Requests库和BeautifulSoup库的使用方法,最后通过综合案例手把手教会读者编写一个简单的爬虫程序。
第4章 正则表达式
本章主要介绍了正则表达式的常用符号及Python中re模块的使用方法,在不需要解析库的情况下完成一个简单的爬虫程序。
第5章 Lxml库与Xpath语法
本章主要介绍了Lxml库在Mac和Linux环境中的安装方法、Lxml库的使用方法及Xpath语法知识,并且通过案例对正则表达式、BeautifulSoup和Lxml进行了性能对比,最后通过综合案例巩固Xpath语言的相关知识。
第6章 使用API
本章主要介绍了API的使用和调用方法,对API返回的JSON数据进行解析,最后通过使用API完成一些有趣的综合案例。
第7章 数据库存储
本章主要介绍了非关系型数据库MongoDB和关系型数据库MySQL的相关知识,并通过综合案例展示了Python对两种数据库的存储方法。
第8章 多进程爬虫
本章主要介绍了多线程及其概念,并通过案例对串行爬虫和多进程爬虫的性能进行了对比,最后通过综合案例介绍了多进程爬取数据的方法和技巧。
第9章 异步加载
本章主要介绍了异步加载的基本概念,以及如何针对异步加载网页使用逆向工程抓取数据,最后通过综合案例讲解了逆向工程的使用方法和常用技巧。
第10章 表单交互与模拟登录
本章主要介绍了Requests库的POST方法,通过观测表单源代码和逆向工程来填写表单以获取网页信息,以及通过提交cookie信息来模拟登录网站。
第11章 Selenium模拟浏览器
本章主要介绍了Selenium模块的安装、Selenium浏览器的选择和安装,以及Selenium模块的使用方法,最后通过综合案例介绍了如何对采用异步加载技术的网页进行爬虫。
第12章 Scrapy爬虫框架
本章主要介绍了Windows 7环境中的Scrapy安装和创建爬虫项目的过程,并通过案例详细讲解了各个Scrapy文件的作用和使用方法,而且通过多个综合案例讲解了如何通过Scrapy爬虫框架把数据存储到不同类型的文件中,最后讲解了如何编写跨页面网站的爬虫代码。
本书读者对象
数据爬虫初学者;
数据分析初级人员;
网络爬虫爱好者;
数据爬虫工程师;
Python初级开发人员;
需要提高动手能力的爬虫技术人员;
高等院校的相关学生。
本书配套资源及获取方式
本书涉及的源代码文件等配套学习资源需要读者自行下载。请登录机械工业出版社华章公司的网站www.hzbook.com,然后搜索到本书页面,按照页面上的说明进行下载即可。
虽然我们对书中所述内容都尽量核实,并多次进行文字校对,但因时间有限,加之水平所限,书中疏漏和错误之处在所难免,敬请广大读者批评、指正。联系我们请发E-mail到hzbook2017@163.com。
编著者