大数跨境
0
0

爬虫入门——原来爬虫这么简单

爬虫入门——原来爬虫这么简单 数据皮皮侠
2019-10-26
0
导读:今天我们来介绍近年大火的爬虫工具,需要说明的是,我们今天将主要介绍基于python的专业工具——requests第三方软件包的基本使用




今天我们来介绍近年大火的爬虫工具,需要说明的是,我们今天将主要介绍基于python的专业工具——requests第三方软件包的基本使用,并且有两个实战例子,其他如八爪鱼采集器、后裔采集器等爬虫软件的使用大家可通过网页教程自行探索!



一、什么是Requests软件包

 Requests软件包是目前公认的爬取网页最好的第三方库,主要特点在于超简洁!甚至一行代码就能从网页上获得相关资源,轻轻松松便可掌握掌握定向网络数据爬取的方法。



二、Requests安装

安装方法:直接以管理者身份运行命令提示符,输入pip install requests即可,回车即可。如果你的电脑上没有pip,(啧啧),请上官网http://www.python-requests.org获得帮助。


(emm…开头表扬:我不得不说,这个库的官网实在是太可爱啦!)



三、基本方法介绍

首先介绍,Requests可以实现两个功能:

一是自动爬取HTML页面

二是自动网络请求提交


requests库主要有7个常用方法:



其中,requests.get() 是获取HTML网页的主要方法,也是我们最常用的方法。以下构造了一个向服务器请求资源的Request对象,其中url为拟获取页面的url链接。


r=requests.get(url)



四、实例演示——爬取百度主页信息

访问百度主页

import requestsr = requests.get(“ http://www.baidu.com”)



检查状态码,若状态码为200则访问成功,否则即为失败

r.status_code


解码,更改为“utf-8”编码(针对Unicode的一种可变长度字符编码)

r.encoding= 'utf-8'


输出网页内容

r.text

此时,便成功抓取了百度首页的内容!



五、实战1 :爬取京东商品信息

在这一例中,我们选择了华为Mate30这一产品,用try/except格式(主要是用于处理程序正常执行过程中出现的一些异常情况),来爬取商品信息。




import requests
url=" https://item.jd.com/100005185603.html"
try:
r=requests.get(url)
r.raise_for_status()
r.encoding=r.apparent_encoding
print(r.text[:1000])
except:
print ("爬取失败")


  以下就是我们的结果啦~


运行结果:




六、实战2:网络图片的爬取和储存

在国家地理中文网中我们选择了如下图片(这张罕见的照片捕捉到了一只喜马拉雅旱獭被一只藏狐吓坏的一幕,照片的拍摄者中国摄影师鲍永清获得了年度野生生物摄影师大赛的最高荣誉。 

摄影:鲍永清, WILDLIFE PHOTOGRAPHER OF THE YEAR)。


我们复制了其图片链接,接下来我们将用python将其爬取下来,并保存在C://pics//路径中。




import requestsimport osurl=" http://image.ngchina.com.cn/2019/1016/20191016034112233.jpg "root="C://pics//"path=root+url.split('/')[-1]try:    if not os.path.exists(root):        os.mkdir(root)    if not os.path.exists(path):    r=requests.get(url)with open(path,'wb') as f:    f.write(r.content)f.close()print("文件保存成功")else     print("文件已存在")except:    print("爬取失败")



   快检查一下你的文件夹吧!



七、结语

通过本次的基本知识讲解,你掌握了requests库的基本用法了吗?入门阶段,我们首先只介绍方便简洁的requests库,要想提升爬虫技能,还可学习Beautiful Soup库来解析HTML页面,Re正则表达式来提取页面关键信息,进阶阶段还可学习功能强大的Scrapy库。


那我们下次再见哇!


(知识来源于中国大学MOOC,侵删)



“数据皮皮侠”邀您同游知识海洋

本期作者:文一

本期编辑校对:李嘉楠


【声明】内容源于网络
0
0
数据皮皮侠
社科数据综合服务中心,立志服务百千万社科学者
内容 3402
粉丝 0
数据皮皮侠 社科数据综合服务中心,立志服务百千万社科学者
总阅读3.1k
粉丝0
内容3.4k