经过努力,我们终于拿到了数据了。那么下一步就是要将我们获取到的数据保存起来了,这样才能给后续的操作(在网页上展示、数据分析挖掘可视化等等)提供便利。
一般我们保存数据可以采用多种可选载体,根据成本、数据用途我们分别采用适合自己的载体保存数据。主要的数据保存方法有写入到文本:txt,csv,excel...
保存到数据库:本地的sqlite、MySQL、mongodb...
由于保存到数据库的操作需要了解数据库相关知识以及软件支持,所以我们本章采用多种文本方式写入。
先回顾一下上一节的代码:import requestsfrom bs4 import BeautifulSoup # 从bs4引入BeautifulSoup#请求网页url = "https://movie.douban.com/cinema/later/chengdu/"response = requests.get(url)# 解析网页# 初始化BeautifulSoup方法一:利用网页字符串自带的编码信息解析网页soup = BeautifulSoup(response.content.decode('utf-8'), 'lxml')# 初始化BeautifulSoup方法二:手动指定解析编码解析网页# soup = BeautifulSoup(response.content, 'lxml', from_encoding='utf-8')# print(soup) # 输出BeautifulSoup转换后的内容all_movies = soup.find('div', id="showing-soon") # 先找到最大的div# print(all_movies) # 输出最大的div的内容for each_movie in all_movies.find_all('div', class_="item"): # 从最大的div里面找到影片的div
# print(each_movie) # 输出每个影片div的内容
all_a_tag = each_movie.find_all('a')
all_li_tag = each_movie.find_all('li')
movie_name = all_a_tag[1].text
moive_href = all_a_tag[1]['href']
movie_date = all_li_tag[0].text
movie_type = all_li_tag[1].text
movie_area = all_li_tag[2].text
movie_lovers = all_li_tag[3].text
print('名字:{},链接:{},日期:{},类型:{},地区:{}, 关注者:{}'.format(
movie_name, moive_href, movie_date, movie_type, movie_area, movie_lovers))Python打开文件操作详解
使用file_obj = open("file_name", 'mode', encoding="encoding")的方法进行操作。
file_name是你需要读取或者写入的文件路径及文件名(如"../data/ok.txt"是相对路径打开,如果只写一个"ok.txt",那么就会默认保存到当前.py文件或者.ipynb文件的相同文件夹里面)mode是你指定操作文件的方法,常用的有r,w,a, r+&