爬虫基础

爬虫的概念

  1. 模拟浏览器 发送请求 获取响应

爬虫的分类

  • 通用爬虫 通常指搜索引擎的爬虫
  • 聚焦爬虫

爬虫的流程

1. url/url_list
2. 发送请求获取响应
3. 对响应内容进行提取
	a. 提取数据,处理或保存
	b. 提取url,重复步骤2

HTTP和HTTPS的复习

1. http和https的概念
	http 超文本 传输 协议 80端口
	HTTPS http+ssl(安全套接字层) 带有安全套接字层的超文本传输协议 433端口
		HTTPS比HTTP更安全,但是性能更低

2. 重点理解
	浏览器最终展示的结果是多次响应共同渲染的结果,意味着有多次请求被发送出去
	爬虫提取数据应该以url对应的响应为准

3. 爬虫重点关注的请求头
	User-Agent
	Referer 面包屑
	Cookie

4. 爬虫重点关注的响应头
	Set-Cookie
		# 浏览器最多只能保存一个域名下的20条cookie

5. 常见响应状态码
	200 请求成功
	302 307 被临时跳转到新的url
	404 找不到页面
	500 内部服务器错误 503 一般是被反爬了 服务不可用

字符串相关的复习

字符集:多个字符集合在以起(utf-8)
UTF-8是Unicode的实现方式之一
ascii gbk gb2312 iso-8859-1 utf8

str --> bytes  encode()
bytes --> str  decode('utf8')
# 编码方式解码方式必须一样,否则就会出现乱码

requests模块的入门使用

requests的底层实现是基于urllib
# 发送请求 获取响应

1. requests模块发送简单的get请求、获取响应
response = requests.get(url)

  1. response响应对象常用属性
    response.url
    response.status_code

    response.headers
    response.request.headers

    response.cookies
    response.request._cookies

    response.text # str
    response.content # bytes
    response.content.decode() # 尝试传入不同的字符集

3. 获取图片保存到本地

1. 确定url
2. 发送请求获取响应
3. 保存图片
	图片的格式
	打开文件的方式:图片一类的流媒体必须以bytes类型保存!
	
4. 发送带header的请求
requests.get(url, headers={})

5. 发送带参数的请求
requests.get(url, params={}, headers={})
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值