我们获取到数据之后,通常不是只输出一下过过眼瘾,而是存储下来,简单介绍一下常用的方式

保存为csv文件

csv文件的操作类似txt文本,但它显示出来的效果类似Excel表格,是很好用的一种形式。

csv文件使用英文逗号作为分隔符号,注意获取的数据有没有英文逗号。除此之外,要记得写入换行符嗷!

以我们的例子为例

import requests
import re
count=0
with open('李清照诗词集.csv','w',encoding='utf-8') as fp:for i in range(1,12):print('正在爬取第%d页'%i)url='https://so.gushiwen.org/authors/authorvsw.aspx?page='+str(i)+'&id=9cb3b7c0e4a0'response=requests.get(url).text# print(response)poem_title_list=re.findall('<textarea style=" background.*id=.*">?(.*》?)https',response)[:-1]count+=len(poem_title_list)for j in poem_title_list:# 字符串处理data=j.split('——宋代·李清照')data.insert(1,',')data.reverse()# 添加换行符data.append('\n')fp.writelines(data)
print('共%d首诗词'%count)

保存为Excel文件

使用pandas

pandas类似于低配版的R语言,对数据处理与操作十分友好,我们可以直接使用pandas读写Excel,方法如下

#110首
import requests
import pandas as pd
import re
count=0all_poems = []
for i in range(1,12):print('正在爬取第%d页'%i)url='https://so.gushiwen.org/authors/authorvsw.aspx?page='+str(i)+'&id=9cb3b7c0e4a0'response=requests.get(url).text# print(response)poem_title_list=re.findall('<textarea style=" background.*id=.*">?(.*》?)https',response)[:-1]count+=len(poem_title_list)for j in poem_title_list:# 字符串处理data=j.split('——宋代·李清照')all_poems.append({"title":data[1],'text':data[0]})print(data)
print('共%d首诗词'%count)# 转化为pandas数据(二维数据)
df = pd.DataFrame(all_poems)
# 保存为Excel
df.to_excel("李清照诗集.xlsx",index=False)

建议大家保存的时候后缀写xlsx,因为pandas是有依赖库的,当为xls的时候调用xlwt库,为xlsx时调用openpyxl库。

当写入大量数据的时候,xlwt会报错,openpyxl库则可以接受!

  • pandas构造DataFrame还有另外的形式,不过不建议使用
  • 最后导出Excel的时候,index=False表示不写入索引,大家可以改成True看看有什么变化

不使用pandas

那就类似自动化办公了,上面说了,pandas库的依赖是xlwt或openpyxl,我们可以直接学习这两个库的操作,当然,教程我肯定是写了的点击跳转

保存到数据库中

因为基础的增删改查语法都差不多,我建议先学如何使用SQLit,这是python可以直接操作的,不需要再下载别的软件(有些人下安装mysql会高血压…)

关于如何使用基础的增删改查语句,我当然是写了教程点击跳转

爬虫速成(四):数据存储相关推荐

  1. python爬虫实现股票数据存储_Python爬虫抓取东方财富网股票数据并实现MySQL数据库存储!...

    Python爬虫可以说是好玩又好用了.现想利用Python爬取网页股票数据保存到本地csv数据文件中,同时想把股票数据保存到MySQL数据库中.需求有了,剩下的就是实现了. 在开始之前,保证已经安装好 ...

  2. 爬虫mysql数据清洗_爬虫分析之数据存储——基于MySQL,Scrapy

    配置MySql 关于MySQL在Ubuntu的Pycharm上的配置,可以参考这篇文章中的第三部分 如果上面的步骤处理完毕后找不到你新建的数据库, 可以参照下图配置 勾选要显示的Schemas(数据库 ...

  3. 每天30分钟 一起来学习爬虫——day15(数据存储 之 Redis)

    redis redis 概述 下载安装: 数据操作 python 和 redis 的交互 redis 概述 1.NoSQL 技术 为了克服大数据量的需求,或者是主页访问量瞬间较大磁盘读/写速度比较慢的 ...

  4. python爬虫实现股票数据存储_Python 爬虫 | 股票数据的获取

    最近股市有了一股牛市的味道,我也来蹭波热度,这节我们将爬取股票数据,股票数据在网上很容易找到,这里以某方财富网为例 目标: 爬取股票数据并存储进数据库中(这里以MongoDB为例) 目标网站(base ...

  5. 东方财富网爬虫及MySQL数据存储

    爬取东方财富网关于"国华网安资金流向"数据 采用了动态获取的方法,使用xpath获取网页中的表格数据(需安装谷歌浏览器及相关程序) ChromeDriver Mirror(下载谷歌 ...

  6. Linux:python捕获异常,模板,文件以及数据存储

    一·异常 异常是什么: 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行. 一般情况下,在Python无法正常处理程序时就会发生一个异常. 异常是Python对象,表示一个错误. ...

  7. python爬虫(四)数据存储

    python爬虫(四)数据存储 JSON文件存储 JSON是一种轻量级的数据交换格式,它是基于ECMAScript的一个子集 JSON采用完全独立于语言的文本格式 JSON在Python中分别由lis ...

  8. 以下用于数据存储领域的python第三方库是-南开《网络爬虫与信息提取》19秋期末考核题目【标准答案】...

    <网络爬虫与信息提取>19秋期末考核-0001 试卷总分:100 得分:70 一.单选题 (共 20 道试题,共 40 分) 1.如果很多爬虫同时对一个网站全速爬取,那么其实就是对网站进行 ...

  9. 爬虫实战入门级教学(数据爬取->数据分析->数据存储)

    爬虫实战入门级教学(数据爬取->数据分析->数据存储) 天天刷题好累哦,来一期简单舒适的爬虫学习,小试牛刀(仅供学习交流,不足之处还请指正) 文章讲的比较细比较啰嗦,适合未接触过爬虫的新手 ...

  10. 爬虫数据存储到数据库/增量爬虫+多级页面获取=====安居客信息爬取

    文章目录 前言 一.增量爬虫是什么? 二.python数据存储到数据库 三.多级页面的跳转获取 四:遇到的问题以及解决 五:代码 总结 前言:这次的爬取内容是安居客网页里面的信息,首先是我爬取的页面是 ...

最新文章

  1. 利用python模块paramiko在CentOS 6.3 64上搭建SFTP环境
  2. php 当前页面下载文件,php实现当前页面点击下载文件的简单方法
  3. 10 Linux引导过程和服务控制
  4. 监控工具—Prometheus—安装部署
  5. 新建android项目导包,Cordova开发App入门(一)创建android项目
  6. android界面实现框架内页面跳转_KVM虚拟化管理平台的实现
  7. 为什么说任何基于比较的算法将 5 个元素排序都需要 7 次?
  8. 电压源和电流的关联参考方向_数控电压、电流源1.3
  9. java 程序执行原理
  10. VMware workstation 磁盘扩容
  11. android 动态壁纸开发
  12. POJ 2104 K-th Number 主席树(区间第k大)
  13. C 标准库中输出到字符串、到文件的相关函数
  14. 单链表以及双向链表的操作
  15. java jpa是什么_jpa是什么框架?jpa是什么意思?
  16. matlab中matconvnet,matlabR2016中配置matconvnet编译时出错
  17. Epub电子书实战解析
  18. Outlook设置规则的一点提示
  19. 计算机主机内有的硬件有,怎么看电脑配置?查看电脑配置方法有哪些?
  20. 大写金额换算器iOS版源代码

热门文章

  1. ros --- 录制imu bag包 和 imu标定
  2. 如何恢复硬盘数据,包括硬盘文件名乱码
  3. VUE中$refs和$el的使用详解
  4. QtCreator:missing separator. Stop.
  5. 【量化】股市技术分析利器之TA-Lib(二)
  6. java反射机制是什么_java中的反射机制是什么?
  7. FODM8061半距微型扁平逻辑兼容的高速光电耦合器
  8. 小白入门:python sklearn之kmeans
  9. redis集群模式详解
  10. c++ Numeric limits