python-爬虫系列教程-前期知识

关于爬虫的前期认知:

爬虫的内容:获取你能看见的网页内容或移动APP的内容。下面主要讲解网页内容

另外,爬取站点以m站优于wap站优于pc站的顺序查看。原因很简单,因为m站最简单(手机端),最难的就是pc站了。所以如果在m站能找到你需要的所有信息就在m站吧

针对需爬取的内容分为三种,

一是包含在HTML源代码中的内容(源代码可鼠标右键选择查看源代码则可以看见当前网页的HTML源代码,或者ctrl+U键);这种情况直接获取HTML代码解析即可,最简单的一种情况。

二是Javascript加载的内容,有的时候你会发现这样一种现象,明明在页面上显示的某个元素在源代码中就是找不到,(查找可用ctrl+f键)。这种情况则是由于该元素是由JS动态生成在页面中。这种需要解析JS,或者霸王硬上弓,采用selenuim模拟浏览器行为。

三是AJAX异步请求,通常发生在某些网站的分页应用,新浪微博就是一个很好的例子。当你鼠标不断往下滑,不断动态加载新的内容。这种情况需跟踪核心的请求,请求后面会讲解,抓取这个异步请求即可。

爬虫的过程是: 发送请求——获得返回数据——对返回数据进行解析。

HTTP请求

是什么?请求可 以产生于你在浏览器地址栏输入的http地址,当你按下enter键的那一刻,实际上就是向服务器发送了一个请求,另外,而请求也并不仅限于可见的http地址,比如当你浏览微博时,不断往下滑而加载出新的内容实际上请求也在发生,可以理解为下滑的这个交互产生了请求。

怎么看?请求过程可以在浏览器的开发者页面的网络中看到,快捷键为ctrl+shift+I,如下图所示,发送了4个GET请求(请求分为GET和POST两种),还可以查看特定返回类型的请求,如HTML类请求,在最下面一栏筛选,该界面可能在不同的浏览器有一些差异,不过大体是相同的,这里展示的是火狐浏览器的界面。

python-爬虫系列教程-前期知识_第1张图片

点击上图红色圈圈的图标,可看到请求的具体组成部分:标题头、cookies等


python-爬虫系列教程-前期知识_第2张图片

返回数据

请求返回正如上面提到的HTML类请求,这里是按返回数据来分,还有图片、媒体、css等,在爬虫中需要得到的返回数据一般为HTML源代码和JSON数据。JSON数据发生在异步加载的过程中,也就是第一幅图的XHR请求中。

解析数据

若是HTML代码,则可利用BeautifulSoup等库工具进行解析,或者直接利用正则表达式

JSON数据是结构化数据,可利用python内置的json库进行载入提取。

关于Python的学习

python是一门语法简洁、功能强大的 语言。如果你有C语言或者其它编程语言的学习经验,python会很好上手。具体学习可参考python的官方文档:python documention

关于python的下载安装可参考:菜鸟教程:python教程.不习惯看英文文档也可以参考该网站的教程

在安装过程中关于环境变量的设置有一个小贴士,其它软件也适用。环境变量有的时候会让人有点头疼。首先要理解为什么要设置环境变量,环境变量其实有点类似于快捷方式,以python为例,设置好环境变量后则可直接在cmd中运行python命令,比如下图中输入python命令后则可进入shell模式。所以环境变量的设置像是间接打开了python的应用程序。所以环境变量设置成python.exe所在的文件目录即可。其它类型的环境变量同理,重点是找到你所需指向的文件所在目录。

结语

之后的会根据需爬取的网页类型进行分阶段案例讲解,敬请关注。

你可能感兴趣的:(python-爬虫系列教程-前期知识)