如何将爬虫获取的数据写入Excel,这一点我在爬虫文章几乎都是采用这种方式来进行操作的

写入Excel的目的是为了后续更加方便的使用pandas对数据进行清洗、筛选、过滤等操作。

为进一步数据研究、可视化打基础。

1. 自定义写入Excel

python写入Excel的方式有很多,常用的支持python操作的库有

xlsxwriterpandas、openpyxl

今天咱们只介绍我常用到的openpyxl

1. 创建workbook

2.创建worsheet

3.数据写入sheet

4.数据写入sheet

5.保存到excel

既然说到爬虫数据写入Excel。那我们直接上爬虫案例

网页的分析和数据的爬取我们可以参考:

Python实战|腾讯招聘你干什么?python可视化告诉你

如图我们现在已经成功的将数据打印出来了,接下来我们考虑的就是如何将这些数据保存到Excel中。

前面说到我们这里使用的Python库是openpyxl来实现这一操作。

所以第一步

openpyxl的下载

或者自行下载whl文件安装

https://www.lfd.uci.edu/~gohlke/pythonlibs/

导入库

使用import导入openpyxl库,为后续方便调用,

可以使用as关键字来简写库名

import openpyxl as op

1. 创建workbook

ws = op.Workbook()

2.创建worsheet

wb = ws.create_sheet(index=0)

3. 头文件

    wb.cell(row=1, column=1, value='职位名称')wb.cell(row=1, column=2, value='国家')wb.cell(row=1, column=3, value='城市')wb.cell(row=1, column=4, value='职位分类')wb.cell(row=1, column=5, value='职位更新时间')wb.cell(row=1, column=6, value='职位要求')

3.数据写入sheet

      # 加入count是为了换行写入数据count = 2 # 要写入excel的数据post_name = job['RecruitPostName']  # 职位名称country_name = job['CountryName']  # 国家loc_name = job['LocationName']  # 城市category_name = job['CategoryName']  # 职位分类last_up_time = job['LastUpdateTime']  # 职位更新时间responsibility = job['Responsibility']  # 职位要求# 打印获取到的数据print(post_name, country_name, loc_name, category_name, last_up_time, responsibility)# 将数据写入到下一行wb.cell(row=count, column=1, value=post_name)wb.cell(row=count, column=2, value=country_name)wb.cell(row=count, column=3, value=loc_name)wb.cell(row=count, column=4, value=category_name)wb.cell(row=count, column=5, value=last_up_time)wb.cell(row=count, column=6, value=responsibility)# count加1,进入到下一行写入数据count += 1

4.保存excel

  # 保存数据ws.save('腾讯职位.xlsx')

四步走轻松将你的数据写入到Excel

还有更多的表头、边框、颜色设置等在此不再赘述哈

有需要的可自行百度哈。

2. 函数式写入Excel

import openpyxl as opid = [1, 2, 3]
name = ['张三', '李四', '王五']
age = [21, 20, 122]
address = ['北京', '上海', '广州']
infos = [id, name, age, address]def op_toexcel(data): # openpyxl库储存数据到excelwb = op.Workbook() # 创建工作簿对象ws = wb['Sheet'] # 创建子表ws.append(['序号', '姓名', '年龄', '住址']) # 添加表头for i in range(len(data[0])):d = data[0][i], data[1][i], data[2][i], data[3][i]ws.append(d) # 每次写入一行wb.save('测试.xlsx')

3. pandas写入Excel

id = [1, 2, 3]
name = ['张三', '李四', '王五']
age = [21, 20, 122]
address = ['北京', '上海', '广州']
infos = [id, name, age, address]# pandas库储存数据到excel
def pd_toexcel(data):# 用字典设置DataFrame所需数据dfData = {'序号': data[0],'姓名': data[1],'年龄': data[2],'住址': data[3]}# 创建DataFramedf = pd.DataFrame(dfData)# 存表,去除原始索引列(0,1,2...)df.to_excel('测试.xlsx', index=False)

如有不足之处,烦请大佬们不吝赐教。及时指正。一起进步!

我是如何把python爬虫获取到的数据写入Excel的?相关推荐

  1. Python 爬虫 | 获取历史涨停数据

    最近想研究一下连板的个股有没有什么规律(暴富我来了),这一篇主要就是做数据准备的. 目录 1.数据获取 2.代码实现 1.数据获取 数据来源就是问财,查指定日期的涨停即可获得当日的数据. 2.代码实现 ...

  2. [遥感]利用python爬虫获取美国冰雪数据中心的数据

    00. 写在前面: 由于最近学习方面需要用到NSIDC(美国冰雪数据中心)的数据进行计算,但是手工下载又特别耗费时间,需要一个一个去点击,所以我尝试着去写一个小爬虫获取所需数据. 对所有需要在NSID ...

  3. python爬虫获取并购重组数据

    ##并购重组数据爬取案例 1.寻找并购数据网址,网址见案例代码: 2.分析数据在网页上存在的形式.例如本文:每次跳转页面,都会发送一个请求,返回一个Json格式的结果.我们可以看到json里面的数据就 ...

  4. python爬虫获取的网页数据为什么要加[0-python3爬虫爬取网页思路及常见问题(原创)...

    学习爬虫有一段时间了,对遇到的一些问题进行一下总结. 爬虫流程可大致分为:请求网页(request),获取响应(response),解析(parse),保存(save). 下面分别说下这几个过程中可以 ...

  5. python爬虫获取的网页数据为什么要加[0-[Python爬虫] 等待网页加载后再获取内容...

    0x0 背景 最近在学习Python爬虫的相关知识,主要是之前有一个小idea想要用Python实现,沉寂了一年,近期终于下定决心要利用假期时间首要解决此项任务,不然拖到最后都没完成,自己遗憾不说,还 ...

  6. python爬虫获取的网页数据为什么要加[0-python爬虫解析页面数据的三种方式

    re模块 re.S表示匹配单行 re.M表示匹配多行 使用re模块提取图片url,下载所有糗事百科中的图片 普通版 import requests import re import os if not ...

  7. python爬虫获取的网页数据为什么要加[0-使用 Python 爬取网页数据

    1. 使用 urllib.request 获取网页 urllib 是 Python 內建的 HTTP 库, 使用 urllib 可以只需要很简单的步骤就能高效采集数据; 配合 Beautiful 等 ...

  8. Python爬虫获取京东大数据!其实爬虫真的很简单!

    简介 Python是一个简洁的语言,集成性非常高,我们可以使用集成的工具库,本文中用到的库有requests.re 找到我们需要爬取的链接 PS:如有需要Python学习资料的小伙伴可以加点击下方链接 ...

  9. 利用python爬虫获取豆瓣读书数据建立书单

    0. 写在前面 网络爬虫: A Web crawler, sometimes called a spider, is an Internet bot that systematically brows ...

最新文章

  1. vue-cli3.0 生产包去除console.log
  2. 工作报告 2010.12.30
  3. Nvidia推边缘运算平台EGX 未来将提供企业AI模型参考框架
  4. 11深入理解C指针之---指针和常量
  5. JavaEE是什么?
  6. struts2.1.8,hibernate3.3.2,spring2.5 整合需要哪些jar包
  7. Windows 2003性能监视器中的计数器名称变成数字的解决方法
  8. 阿里蚂蚁金服中间件(Java 4轮面试题含答案):Redis缓存+线程锁+微服务等
  9. quartz 时间配置规则
  10. C#LeetCode刷题之#56-合并区间(Merge Intervals)
  11. (209)浮点数运算步骤
  12. (34)FPGA面试技能提升篇(高速SERDES)
  13. 《A Discussion on Solving Partial Differential Equations using Neural Networks》梳理
  14. HDU1869 六度分离【Dijkstra算法】
  15. 56. Merge Intervals - LeetCode
  16. Vue复刻华为官网(三)
  17. VS2015+Qt5.9.2 调试遇到无法找到入口 无法定位程序输入点的解决办法
  18. 关于对MIDlet套件进行数字签名
  19. 亲测好用的屏幕录制软件:camtasia2021 mac中文版
  20. CSS兼容性技巧整理--从IE6-IE9 火狐谷歌浏览器兼容

热门文章

  1. 抠图:基于单个原色通道
  2. CDN,P2P,PCDN的区别?
  3. java 两集合根据某字段 过滤掉相同的数据 , 集合整合数据
  4. 深度学习——神经网络的学习
  5. Ae 效果详解:音频频谱
  6. 【论文阅读】Fully Convolutional Networks for Semantic Segmentation【CVPR,PAMI】
  7. 布隆过滤器的浅入浅出
  8. 圆形上下挤压 matlab,基于Matlab的GUI设计双螺杆挤压机系统仿真软件
  9. asp.net905-二次元网站系统#毕业设计
  10. Corsiniの时光漏