爬虫实践——数据存储到Excel中
在进行爬虫实践时,我已经爬取到了我需要的信息,那么最后一个问题就是如何把我所爬到的数据存储到Excel中去,这是我没有学习过的知识。
如何解决这个问题,我选择先百度查找如何解决这个问题。
百度查到的方法千万种,我先选择看得懂的文章下手,不断尝试,最后解决了问题
那么到底如何解决这个问题呢?
解决这个问题要用到三个模块分别是xlwt、xlrd和xlutils
在使用这两个模块时要先下载安装它们,我用的是pycharm编写程序,我用到的安装方法是:
#在文件中导入xlwt、xlrd 和xlutils
import xlwt
import xlrd
import xlutils
再写入它们之后,会报错,把鼠标分别移到xlwt上点击一下,
它的头上会有一个红色的小灯泡,点击灯泡再点击install and import package "xlwt"
xlrd和xlutils同理
这样这三个模块就安装好了
模块安装好了,下一步就是要学会如何使用这三个模块了
xlwt模块:
import xlwt file_name = r'C:\Users\樱花雨\Desktop\test.xls'#这是你要保存文件的文件路径和文件名
workbook = xlwt.Workbook()#表示新建xls工作簿
sheet1 = workbook.add_sheet('worksheet')#新建xls表,表的名字是worksheet
for a in range(1,16):
# 把数据写入xls中,行,列,值
sheet1.write(0, 0, 'I')
sheet1.write(0, 1, 'love')
sheet1.write(0.2, 'python')
# 保存xls到file_name的路径下和文件名
workbook.save(file_name)
xlrd和xlutils模块:(xlrd参考链接:xlrd)
import xlrd
from xlutils.copy import copy xlsfile = r'C:\Users\樱花雨\Desktop\test.xls'
#打开xsl文件
book = xlrd.open_workbook(xlsfile)
#获取表格的名字
sheet_name = book.sheet_names()
print(sheet_name)
#获取工作表
#(1)通过索引顺序获取
#sheet = bool.sheets()[0]
#(2)通过名称获取
#sheet = book.sheet_by_name(r'worksheet')
#(3)通过索引顺序获取
sheet = book.sheet_by_index(0)
#获取表中的行数
nrows = sheet.nrows
#获取表中的列数
ncols = sheet.ncols
print(nrows)
print(ncols)
#获取表中整行的内容
row_data = sheet.row_values(0)
#获取表中列内容
col_data = sheet.col_values(0)
print(row_data)
print(col_data)
#获取表中单元格的内容
cell_value = sheet.cell_value(3,0)
print(cell_value)
#获取表中单元格的内容
cell_value2 = sheet.cell(3,0)
print(cell_value2)
#修改或添加单元格内容
#ctype:0 empty ;1,string;2 number;3 date;4 boolean;5 error
#value:写入单元格中的内容
#xf:0
#sheet.put_cell(row,col,ctype,value,xf)
sheet.put_cell(1,2,1,"test",0)
cell_value2 = sheet.cell(1,1)
print(cell_value2)
#保存xlsfile
wb = copy(book)
wb.save(xlsfile)
爬虫实践——数据存储到Excel中的更多相关文章
- 如何将存储在MongoDB数据库中的数据导出到Excel中?
将MongoDB数据库中的数据导出到Excel中,只需以下几个步骤: (1)首先,打开MongoDB安装目录下的bin文件夹,(C:\Program Files (x86)\MongoDB\Serve ...
- 如何使用免费控件将Word表格中的数据导入到Excel中
我通常使用MS Excel来存储和处理大量数据,但有时候经常会碰到一个问题—我需要的数据存储在word表格中,而不是在Excel中,这样处理起来非常麻烦,尤其是在数据比较庞大的时候, 这时我迫切地需要 ...
- c#.net循环将DataGridView中的数据赋值到Excel中,并设置样式
Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel ...
- phpexcel的写操作将数据库中的数据导入到excel中
这个版本据说是可以支持excel2007,但是我使用2007编辑的xlsx是无法获得该库的支持.于是乎我就将它转化为2003.感觉支持地很好. 下面介绍一下具体的使用: require_once('. ...
- Java基础知识强化之IO流笔记46:IO流练习之 把文本文件中数据存储到集合中的案例
1. 把文本文件中数据存储到集合中 需求:从文本文件中读取数据(每一行为一个字符串数据)到集合中,并遍历集合. 分析: 通过题目的意思我们可以知道如下的一些内容, 数据 ...
- 将Datagridview中的数据导出至Excel中
首先添加一个模块ImportToExcel,并添加引用 然后导入命名空间: Imports Microsoft.Office.Interop Imports System.Da ...
- JAVA之旅(十七)——StringBuffer的概述,存储,删除,获取,修改,反转,将缓存区的数据存储到数组中,StringBuilder
JAVA之旅(十七)--StringBuffer的概述,存储,删除,获取,修改,反转,将缓存区的数据存储到数组中,StringBuilder 讲完String,我们来聊聊他的小兄弟 一.StringB ...
- IOS开发数据存储篇—IOS中的几种数据存储方式
IOS开发数据存储篇—IOS中的几种数据存储方式 发表于2016/4/5 21:02:09 421人阅读 分类: 数据存储 在项目开发当中,我们经常会对一些数据进行本地缓存处理.离线缓存的数据一般都 ...
- 使用POI把查询到的数据表数据导出到Excel中,一个表一个sheet.最详细!!!
一.需求 我们会遇到开发任务: 经理:小王,你来做一下把数据库里的数据导出到Excel中,一个表是一个sheet,不要一个表一个Excel. 小王:好的,经理.(内心一脸懵逼) 二.前期准备 首先我们 ...
随机推荐
- [JZOJ100026]图--倍增
[JZOJ100026]图--倍增 题目链接 太懒了,自行搜索 分析 裸倍增,不多说 \(fa[i][j]\)表示\(i\)跳\(2^j\)步走到的点 \(f[i][j]\)表示\(i\)跳\(2^j ...
- [NOIP2018模拟10.15]比赛报告
闲扯 昨晚又颓到好晚,Yali的降智光环感觉持续至今... 题面好评 T1T3都玩过 逃) T1没看多久就开始写二分+并查集 然后T3看着眼熟想了一个多小时...结果啥都没想出来 赶紧看T2发现还是没 ...
- 使用Docker搭建MySQL服务
一.安装docker windows 和 mac 版可以直接到官网下载 docker desktop linux 的安装方法可以参考 https://www.cnblogs.com/myzony/p/ ...
- P5025 [SNOI2017]炸弹 题解
蒟蒻的第一篇黑题题解(学了这么长时间了才第一道也是没谁了.) 题目链接: Solution: 朴素: 根据题目描述,我们可以处理每一个x节点左右爆炸半径范围内的点,然后模拟一次爆炸 (for),遍历每 ...
- JSP常用标签
JSP常用标签可以理解为JSTL user:普通用户 admin:站点管理员 JSTL1.1.2下载地址:http://archive.apache.org/dist/jakarta/taglibs/ ...
- shell实现并发控制
需求:并发检测1000台web服务器状态(或者并发为1000台web服务器分发文件等)如何用shell实现? ...
- zprepass 之后再base pass为什么用equal不用lessequal
通常basepass深度测试用less equal 如果先做了zprepass 得到一张全屏depth 再画basepass的时候用equal这样 对于alphatest的物体 不需要再用alpha通 ...
- [译] 优化 WEBPACK 以更快地构建 REACT
原文地址:OPTIMIZING WEBPACK FOR FASTER REACT BUILDS 原文作者:Jonathan Rowny 译文出自:掘金翻译计划 本文永久链接:https://githu ...
- 再度吐槽,PHP在centos7的安装方式稍不注意可能就打击你的积极性
由于装新机器,没仔细看随便找了篇博文就匆匆安装了php73结果,连配置文件,扩展模块都找不着在哪这里介绍一个linux的查找命令 find / -name php73* 这一命令使用了*这一正则匹配的 ...
- Educational Codeforces Round 73 (Rated for Div. 2) A. 2048 Game
链接: https://codeforces.com/contest/1221/problem/A 题意: You are playing a variation of game 2048. Init ...