python网络爬虫实战1——基础篇

一、意义

      很多数据并没有存在自家的数据库中,在大数据时代,很多的数据都放在网络上,以网页的形式呈现给大家。我们如何将这些没有固定格式的非结构化数据批量从网络上拷贝下来,并提供给后来者进行数据价值的挖掘,是一件非常有意义的事情。这里,我们必须借助ETL(extract,transformation,loading)三个方法将这些数据转化成结构化数据取用。

    网络上有许多网页咨询,如何将这些网络咨询结构化,并把有用的咨询抽取出来呢?这时候我们就要借助网络爬虫。网络爬虫并不是新技术,像各大搜索引擎的早期技术都使用了网络爬虫,在世界各地爬取网页。而对于大数据时代,网络爬虫更是尤为重要。


二、网络爬虫结构

    网页链接器会发送一个请求request给对方网页适服器,对方就会回传Response。例如,本地的游览器如chrome相当于网页链接器,如新浪网页就相当于适服器。

    因为网页资料包含许多html标签,要进行进一步处理,丢到剖析器中进行处理,之后再存储到数据库之中。


三、如何实际观察一个网页

这里推荐chrome的开发人员工具,监听网页的请求和回应。

右键--》检查,打开开发人员工具。

一般新闻类的网页,都有被搜索引擎搜索到的需求,一般doc下的第一个链接都包含了新闻资讯的绝大多数内容,还有10%在XHR、JS等。


四、撰写爬虫的前期准备

4.1 通过pip安装套件

pip install requests

pip install BeautifulSoup4

注:如果你安装了anaconda集成开发环境就不要安装requests和BeautifulSoup4,直接在jupyter notebook中编写爬虫程序。

4.2 chrome的开发人员工具或者firefox的firebug

五、一个爬虫程序