Python爬虫开发系列之五》数据存储为TXT、JSON格式
在上一篇中我们介绍了Beautiful Soup解析库的使用方法,用解析出数据之后,接下来就是存储数据的问题了。数据保存的方式多种多样,最简单的形式是直接保存成文本文件,比如txt/json/csv....另外还可以保存到数据库----关系型数据库--Mysql MSsql,非关系型数据库 MongoDB、Redis........
一、以txt文本文件存储
from bs4 import BeautifulSoup
import requests
r=requests.get('https://www.baidu.com')
soup=BeautifulSoup(r.content,'lxml')
for bq in soup.select('#u1'):
print(bq.get_text())
with open('hj.txt','w+') as xr:
xr.write(bq.get_text())
##打开方式
r:以只读模式打开文件,默认模式。
rb:以二进制只读模式打开一个文件。
r+:以读写方式打开一个文件。
rb+:以二进制读写方式打开一个文件。文件指针将会放在文件的开头。
w:以写入的方式打开一个文件,如果该文件以存在,则将其覆盖。
wb:以二进制写入的方式打开一个文件,如果该文件以存在,则将其覆盖。
w+:以读写方式打开一个文件,如果该文件以存在,则将其覆盖。
a:以追加方式打开一个文件,如果该文件以存在,文件指南将会放在文件结尾。
ab:以二进制追加方式打开一个文件。
a+:以读写方式打开一个文件。
ab+:以二进制追加方式打开一个文件,如果该文件已经存在,则文件指针将会放在文件结尾。如果该文件不存在,则创建新文件用于读写。
二、JSON文件存储
JSON:通过对象和数组的组合来表示数据,构造简洁,是一种轻量级的数据交换格式。
import json
file_name = 'D:/json_file.txt'
nums = [3, 4, 5, 7, 1, 9]
# nums = {"name": "Mike", "age": 12}
with open(file_name, 'w') as file_obj:
'''写入json文件'''
json.dump(nums, file_obj)
print("写入json文件:", nums)
with open(file_name) as file_obj:
'''读取json文件'''
numbers = json.load(file_obj) # 返回列表数据,也支持字典
print("读取json文件:", numbers)
###下一篇介绍非关系型数据库MongoDB的使用