概要
本文集详解网络爬虫的原理、工具、框架和方法。
详解从简单网页到异步加载网页,从简单存储到数据库存储,从简单爬虫到框架爬虫等技术。
类别:
- 22个网络爬虫综合实战案例、30个网站信息提取
- 详解爬虫的3大方法:
正则表达式
、BeautifulSoup 4库
和Lxml库
- 详解爬取数据的4大存储方式:
TXT
、CSV
、MongoDB
和MySQL
- 详解Scrapy爬虫框架的安装、项目创建、文件使用及爬取数据的存储
引子
随着Internet的飞速发展,互联网中每天都会产生大量的非结构化数据
。如何从这些非结构化数据中提取有效信息,供人们在学习和工作中使用呢?这个问题促使网络爬虫技术应运而生。
由于Python语言简单易用,而且还提供了优秀易用的第三方库和多样的爬虫框架,所以使得它成为了网络爬虫技术的主力军。
近年来,大数据技术发展迅速,数据爬取作为数据分析的一环也显得尤为重要。程序员要进入与数据处理、分析和挖掘等相关的行业,就必须要掌握Python语言及其网络爬虫的运用。
目录
本章介绍了Python和PyCharm的安装及Python最为简单的语法基础,包括简单的流程控制、数据结构、文件操作和面向对象的编程思想。
本章通过介绍网络连接原理,进而介绍了爬虫的原理,讲解了爬虫的基本流程,另外还介绍了如何使用Chrome浏览器认识网页构造和查询网页信息。
本章主要介绍了安装请求和解析网页的Python第三方库、Requests库和BeautifulSoup库的使用方法,最后通过综合案例手把手教会读者编写一个简单的爬虫程序。
本章主要介绍了正则表达式的常用符号及Python中re模块的使用方法,在不需要解析库的情况下完成一个简单的爬虫程序。
本章主要介绍了Lxml库在Mac和Linux环境中的安装方法、Lxml库的使用方法及Xpath语法知识,并且通过案例对正则表达式、BeautifulSoup和Lxml进行了性能对比,最后通过综合案例巩固Xpath语言的相关知识
本章主要介绍了API的使用和调用方法,对API返回的JSON数据进行解析,最后通过使用API完成一些有趣的综合案例。
本章主要介绍了非关系型数据库MongoDB和关系型数据库MySQL的相关知识,并通过综合案例展示了Python对两种数据库的存储方法。
本章主要介绍了多线程及其概念,并通过案例对串行爬虫和多进程爬虫的性能进行了对比,最后通过综合案例介绍了多进程爬取数据的方法和技巧。
本章主要介绍了异步加载的基本概念,以及如何针对异步加载网页使用逆向工程抓取数据,最后通过综合案例讲解了逆向工程的使用方法和常用技巧。
本章主要介绍了Requests库的POST方法,通过观测表单源代码和逆向工程来填写表单以获取网页信息,以及通过提交cookie信息来模拟登录网站。
本章主要介绍了Selenium的模块的安装、Selenium浏览器的选择和安装,以及Selenium模块的使用方法,最后通过综合案例介绍了如何对采用异步加载技术的网页进行爬虫。
第 12 章 Scrapy爬虫框架
本章主要介绍了Windows 7环境中的Scrapy安装和创建爬虫项目的过程,并通过案例详细讲解了各个Scrapy文件的作用和使用方法,而且通过多个综合案例讲解了如何通过Scrapy爬虫框架把数据存储到不同类型的文件中,最后讲解了如何编写跨页面网站的爬虫代码。