前面咱们初步了解爬虫并简单操作了一番,现在对爬虫基本过程进行一个总结。
一、准备目标url
分两种情况:
1.页码总数明确 ,此时找到页面的规律来获取url,如百度图片。使用格式化字符的方式加入页码。
2.页码总数不明确,如果url比较少可以放到列表中来遍历。通过xpath来提取页码。
二、向目标的url发送请求
发送请求时,我们会遇到一些反爬手段,其中最常见的就是用户代理user agent、模拟用户登陆状态cookie。另外,进行post请求时,一定要加上data表单。加上这些,一般的爬虫请求基本上就没问题了。
当然,有的时候也可以通过 代理IP(付费) 的方式。
三、提取数据
这一步,我们要先确定数据的位置。
先查看一下网页源代码。如果数据在当前的网页源代码当中,我们直接发起请求。从中获取相应的信息。采用之前介绍的xpath、bs4、正则表达式等模块来提取数据。
如果数据不在当前的网页源代码当中,我们需要通过抓包工具network来分析数据。先选择某个关键词,通过search来查询我们需要的数据。如果找到在json文件中,就可以用之前学的json.load()将其转换为python类型的数据。同样采用之前介绍的xpath、bs4、正则表达式等模块来提取数据。
四、保存数据
得到想要的数据之后,咱们就需要保存数据。常用的方法有html、txt、csv、xlsx等方法。当然,其中也少不了pandas模块的使用,这些咱们后面再说。
以保存为txt文件为例:
with open("book/ %s.txt"%第一章, 'w') as f:
f.write(d)
当然,更高级的方法还有数据库。如mysql、mongoDB、redis,之后咱们再继续介绍这些数据库。
对爬虫的基本步骤进行了简单的总结,后面的文章会继续往下讨论爬虫的进阶操作。
第一篇:Python的要点(搭建环境、安装配置、第三方库导入方法详细过程)
第二篇:Python爬虫初探(一)——了解爬虫
第三篇:Python爬虫初探(二)——爬虫的请求模块
第四篇:Python爬虫初探(三)——爬虫之正则表达式介绍
第五篇:Python爬虫初探(四)——爬虫之正则表达式实战(爬取图片)
第六篇:Python爬虫初探(五)——爬虫之xpath与lxml库的使用
第七篇:Python爬虫初探(六)——爬虫之xpath实战(爬取高考分数线信息)
第八篇:Python爬虫初探(七)——爬虫之Beautifulsoup4介绍(Ⅰ)
第九篇:Python爬虫初探(八)——爬虫之Beautifulsoup4介绍(Ⅱ)
第十篇:Python爬虫初探(九)——爬虫之Beautifulsoup4实战(爬取豆瓣信息)
第十一篇:Python爬虫实战之 爬取全国理工类大学数量+数据可视化