从今天开始,开始记录爬虫学习的道路,参考书为《从零开始学 Python 网络爬虫》在此也就开始了我的博客生涯,自己现在小白一只,但是坚持下去总会有奇迹。话不多说,开始记录学习笔记!
一、python爬虫三大库之Requests库
1、requests库的使用方法:
#获取所爬虫网页源代码
import requests
res=requests.get('http://bj.xiaozhu.com/')
print(res.text)
2、请求头的使用方法:
import requests
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
res=requests.get('http://bj.xiaozhu.com/',headers=headers)
print(res.text)
#请求头:有时候爬虫需要加入请求头来伪装成浏览器,以便更好地爬取数据。
Requests 库请求并不会“一帆风顺”,当遇到一些情况时,Requests 库会抛出错误或 者异常, Requests 库的错误和异常主要有以下 4 种。
• Requests 抛出一个 ConnectionError 异常,原因为网络问题(如 DNS 查询失败、拒 绝连接等) 。
• Response.raise_ for_ status()抛出一个 HTTPError 异常,原因为 HTTP 请求返回了不成 功的状态码(如网页不存在,返回 404 错误〉。
• Requests 抛出一个 Timeout 异常,原因为请求超时。
• Requests 抛出一个 TooMa町Redirects 异常,原因为请求超过了设定的最大重定 向次数。
此时,可以用python的try来避免异常:
import requests
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36'}
res=requests.get('http://bj.xiaozhu.com/',headers=headers)
try:
print(res.text)
except ConnectionError:
print('拒绝连接')
今天的博客写到这里,小白一只,希望大家多多鼓励,同样谢谢书的作者(因为所有的笔记都是来自于书,手动感激?)