1、准备Requests和User Agent
python中能实现爬虫功能的库有若干个,而最简单最容易上手的,要数Requests库,它是一个常用的http请求库,首先用pip install requests 进行安装才能使用。
User Agent一般翻译为用户代理,它的作用是向服务器自报家门。为什么要这个User Agent呢?因为我们要让爬虫假装是一个正常的用户在使用浏览器对目标网站的服务器发出请求。那怎么知道自己的User Agent,最简单的方法就是在百度中搜索UA查询。
2、确定一个目标网站并分析其结构
比如,我们现在要以中央政府官网作为目标网站,地址http://www.gov.cn,我们要抓取最新政策信息。
政策专栏的地址是:http://www.gov.cn/zhengce/index.htm,该页面显示近10条最新政策标题;
最新政策专栏的地址是:http://www.gov.cn/zhengce/zuixin.htm,该页面显示近60条最新政策标题
点击某一政策名,进入该政策详细内容,如国务院关于促进乡村产业振兴的指导意见,地址是:http://www.gov.cn/zhengce/content/2019-06/28/content_5404170.htm
3、爬取目标页面并保存为本地文件
#导入http请求库requests import requests #指定我们的user agent user_agent = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)\ AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.94 Safari/537.36' headers = {'User-Agent':user_agent} # requests.get()方法读取网页 r = requests.get("http://www.gov.cn/zhengce/content/2019-06/28/content_5404170.htm", headers = headers) print(r.text)
得到了一个html文件,但是中文乱码,因为编码不一样
#修改读取的编码方式,因为charset="utf-8",所以要修改成 "utf-8",否则中文会乱码 r.encoding='utf-8' print(r.text)
#requests.get()得到了一个html文件,可以保存起来 #指定保存html文件的路径、文件名和编码方式 with open ('/Users/Eric/Documents/2019/python/requests.html','w',encoding = 'utf8') as f: #将文本写入 f.write(r.text)
如果爬取一个页面并保存并不会提升我们的效率,下节会讲复杂一点的爬取
神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试