回顾
什么是文件
操作系统提供的虚拟单位
文件打开的步骤
- 获得路径 file_path
- 打开文件 open
- 读取/修改文件
- 保存
- 关闭
打开文件的3个模式和2种方式
- ‘r’ 只读不可写
- 'w' 只写不可读(清空后再写)
- 'a' 只写不可读(追加)
- t模式(文本)
- b模式 (二进制)
with管理上下文
with open('文件名','模式')as f:
f.read()
爬虫原理
通过浏览器发送请求获数据;通过requests模拟浏览器发送请求拿到内容
爬虫流程
- 发送请求(获得url)
- 获取内容
- 解析内容获得需要的内容
request模块的使用
import request
res=requests(
url=''
)
#文本
res.text
#二进制
res.content
re模块
re.s 全局搜索
re.findall 从内容中筛选所需要的内容
.*? 贪婪匹配 需要什么东西就把什么东西(.*?)
今日所学
if判断
单分支结构
if 条件:
print(满足条件怎样怎样)
双分支结构
if 条件:
print(满足条件怎样怎样)
else:
print(不满足条件怎样怎样)
多分支结构
if 条件:
print('条件成立干嘛干嘛') # 条件成立才会执行该段代码,不成立不执行该段代码
elif 条件:
print('if条件不成立走这条')
elif 条件:
...
else:
print('条件不成立干嘛干嘛)# 条件不成立才会执行该段代码,成立不执行该段代码
for循环
循环:重复做一件事
range()方法:
print(list(range(10)))
默认从0开始 输出0,1,2,3,4,5,6,7,8,9 顾头不顾尾
for循环嵌套:
内部循环全部走完,才会走一次外层循环。外层循环走一次,内层循环都会重置
continue
跳出本次循环,不执行下面的代码,直接开始下一次循环
break
提前中断循环,跳出本层循环
爬虫三部曲
- 发送请求
- 解析数据
- 保存数据
爬虫精髓
- 分析网站的通信流程
- 分析查找数据从何而来
- 分析目标网站的反爬策略
- 根据目标网站的反爬策略编写攻击手段,获取数据
爬取豆瓣top250电影信息:
分析目标网站的异步氢气返回的数据(接口)
json:
是一种第三方的数据格式
json.dumps() #把python数据格式转换成json数据格式
json.loads() #把json数据格式转换成python数据格式