先看后赞,养成习惯。点赞收藏,人生辉煌!

1 错误与异常
1.1异常简介
看如下示例发生异常
print("----test-----1")
f = open("123.txt","r") #用只读模式打开了一个不存在的文件,报错
print("----test-----2") #这句代码不会被执行
运行结果如下:

说明:打开一个不存在的文件时,当找不到文件时,就会抛出给我们一个IOError类型的错误
异常类型想要被捕获,需要一致,看如下示例发生异常
try:
print(num)
except IOError: #异常类型想要被捕获,需要一致
print("产生错误了") #NameError: name 'num' is not defined
运行结果如下:

try:
print(num)
except NameError:
print("产生错误了") #NameError: name 'num' is not defined
运行结果如下:

同时捕获
try:
print("----test-----1")
f = open("123.txt","r")
print("----test-----2")
print(num)
except (NameError,IOError):
print("产生错误了") #NameError: name 'num' is not defined
运行结果如下:

如果想知道是哪个类型错误,并且打印出来,该怎么做?
#获取错误描述
try:
print("----test-----1")
f = open("123.txt","r")
print("----test-----2")
print(num)
except (NameError,IOError) as result: #将可能产生的所有异常类型,都放到下面的小括号中
print("产生错误了") #NameError: name 'num' is not defined
print(result)
运行结果如下:

此时,我们修改f = open(“test.txt”,“r”),test.txt是我们已经存在的文件
# 捕获所有的异常 Exception
try:
print("----test-----1")
f = open("test.txt","r")
print("----test-----2")
print(num)
except Exception as result: #将可能产生的所有异常类型,都放到下面的小括号中
print("产生错误了") #NameError: name 'num' is not defined
print(result)

1.2 作业:
1.应用文件操作的相关知识,通过Python新建一个文件gushi.txt,选择一首古诗写入文件中
2.另外写一个函数,读取指定文件gushi.txt,将内容复制到copy.txt中,并在控制台输出“复制完毕"。
3.提示:分别定义两个函数,完成读文件和写文件的操作
尽可能完善代码,添加异常处理。
f = open("gushi.txt","w")
f.write("劝君莫惜金缕衣,劝君惜取少年时。")
f.write("\n")
f.write("花开堪折直须折,莫待无花空折枝。")
f.close()
def CopyGuShi():
f = open("gushi.txt",'r')
c = open("copy.txt",'w')
contents = f.readlines()
for content in contents:
c.write(content)
c.close()
print("复制完毕......")
CopyGuShi()'''
def WriteFile(x):
try:
f = open("x","w")
f.write(input("请输入写入文件内容"))
except Exception as result:
print(result)
def ReadFile(x):
f = open("x",'r')
contents = f.readlines()
for content in contents:
print(content)
WriteFile('gushi.txt')
ReadFile("gushi.txt")
2 python爬虫
2.1 任务介绍
需求分析:爬取豆瓣电影ToP250的基本信息,包括电影的名称、豆瓣评分、评价数、电影概况、电影链接等。
https://movie.douban.com/top250

2.2 爬虫初始
什么是爬虫
网络爬虫,是按照一定规则,自动抓取互联网信息的程序或者脚本。由于互联网数据的多样性和资源的有限性,根据用户需求定向抓取相关网页并分析已成为如今主流的爬取策略。
爬虫可以做什么
你可以爬取妹子的图片,爬取自己想看的视频,只要你能通过浏览器访问的数据都可以通过爬虫获取。
爬虫的本质是什么
模拟浏览器打开网页,获取网页中我们想要的那部分数据。
2.3 基本流程
准备工作
通过浏览器查看分析目标网页,学习编程基础规范。
获取数据
通过HTTP库向目标站点发起请求,请求可以包含额外的header等信息,如果服务器能正常响应,会得到一个Response,便是所要获取的页面内容。。
解析内容
得到的内容可能是HTML、json等格式,可以用页面解析库、正则表达式等进行解析
保存数据
保存形式多样,可以存为文本,也可以保存到数据库,或者保存特定格式的文件。
2.4 编码规范
1、一般python程序第一行需要加入#-- coding:utf-8--或者#coding = utf-8这样可以在代码中包含中文
2、在python中,使用函数实现单一功能或相关联功能的代码段,可以提高可读性和代码重复利用率,函数代码块以def关键字开头后接空格、函数标识符名称、圆括号()、冒号:,括号中可以传入参数,函数段缩进(Tab或四个空格,只能任选一种),return用于结束函数,可以返回一个值,也可以不带任何表达式(表示返回None),如下所示:
def 函数标识符名称(可填形参):
return (值)
3、python文件中可以加入if__name__==”main”:
4、python使用#添加注释,说明代码(段)的作用
2.5 引入模块
模块(module)用来从逻辑上组织python代码(变量、函数、类),本质就是py文件,提高代码的可维护性。python使用import来导入模块
模块module:一般情况下,是一个以.py为后缀的文件
如下示例是接下来爬虫要用到的模块

可以看见有的模块是没有的需要我们下下载安装,安装方式有两种:
方式一:
1、点击下方Terminal,就会出现像命令提示符一样的界面(win+R键,输入cmd同样也会出现)

2、如下命令提示符一样的界面,输入python,如下图,我们输入print(“hello”)同样也输出了‘hello‘

3.比如我们需要导入bs4包,然后输入pip install bs4就可下载。
方式二:
1、如下图,xlwt是不存在的,需要我们导入,此时我们打开File,点击Settings

2、此时xlwt包是不存在的,点击右边的加号,

3、找到xlwt点击install package

4、网速好等几秒就会安装好,如下图

5、此时导入的xlwt包不报错了,如下图:
其他的包如法炮制


本文介绍了Python的错误与异常处理,包括异常简介和捕获多个异常的方法。接着,文章讲解了Python爬虫的基础知识,涵盖爬虫任务介绍、基本流程、编码规范和模块导入。文章提供了爬取豆瓣电影Top250信息的场景,指导读者理解爬虫的工作原理和步骤,并强调了异常处理和代码规范的重要性。
331

被折叠的 条评论
为什么被折叠?



