Python网络爬虫实战(清华科技大讲堂)
作者简介
内容简介
第3章文件与数据的存储 Python以简洁见长,在其他语言中比较复杂的文件 读写和数据IO,在Python中由于比较简单的语法和丰富 的类库而显得尤为方便。本章将从最简单的文本文件的 读写出发,重点介绍CSV文件的读写和操作数据库,同 时介绍一些其他形式的数据的存储方式。 3.1Python中的文件 3.1.1基本的文件读写 谈到Python中的文件读写,总会使人想到“open” 关键字,其最基本的操作如下面的示例: # 最朴素的open()方法 f=open('filename.text','r') # 做点事情 f.close() # 使用with,在语句块结束时会自动关闭 with open('t1.text','rt') as f: # r代表 read,t代表text,一般“t”为默认,可省略 content=f.read() with open('t1.txt','rt') as f: for line in f: print(line) with open('t2.txt', 'wt') as f: f.write(content) # 写入 append_str='append' with open('t2.text','at') as f: # 在已有内容上追加写入,如果使用“w”,则已 有内容会被清除 f.write(append_str) # 文件的读写操作默认使用系统编码,一般为utf8 # 使用encoding设置编码方式 with open('t2.txt', 'wt',encoding='ascii') as f: f.write(content) # 编码错误总是很烦人,如果用户觉得有必要暂时 忽略,可以如下 with open('t2.txt', 'wt',errors='ignore') as f: # 忽略错误的字符 f.write(content) # 写入 with open('t2.txt', 'wt',errors='replace') as f: # 替换错误的字符 f.write(content) # 写入 # 重定向print()函数的输出 with open('redirect.txt', 'wt') as f: print('your text', file=f) # 读写字节数据,例如图片、音频 with open('filename.bin', 'rb') as f: data=f.read() with open('filename.bin', 'wb') as f: f.write(b'Hello World') # 从字节数据中读写文本(字符串),需要使用编码 本书适合Python语言初学者、网络爬虫技术爱好者、数据分析从业人士以及高等院校计算机科学、软件工程等相关专业的师生阅读。