在上一篇中我们介绍了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的使用

python爬虫数据存储文本_Python爬虫开发系列之五》数据存储为TXT、JSON格式相关推荐

  1. 爬虫取中间文本_Python爬虫追美剧?你咋这么溜溜溜上篇

    皮爷不知道大家有多少人是喜欢看美剧? 反正皮爷是个美剧迷,不能说狂,但是看美剧的时间也有差不多10年了.硬生生的把好多部剧都追到了完结. 最早以前,网上资源还不是很严的时候,找个美剧是十分简单的.可是 ...

  2. 爬虫取中间文本_python爬虫神器--Scrapy

    什么是爬虫,爬虫能用来做什么?文章中给你答案.*_* 爬虫爬取斗鱼颜值池塘的主播美照.. 今天我们就开发一个简单的项目,来爬取一下itcast.cn中c/c++ 教师的职位以及名称等信息.网站链接:h ...

  3. python爬取微博文本_Python爬虫爬取新浪微博内容示例【基于代理IP】

    本文实例讲述了Python爬虫爬取新浪微博内容.分享给大家供大家参考,具体如下: 用Python编写爬虫,爬取微博大V的微博内容,本文以女神的微博为例(爬新浪m站:https://m.weibo.cn ...

  4. 【车载开发系列】CAN总线通信---总线报文格式

    [车载开发系列]CAN总线通信-总线报文格式 CAN总线通信---总线报文格式 [车载开发系列]CAN总线通信---总线报文格式 一.什么是ISO15765 二.ISO15765的目的 三.单帧传输的 ...

  5. 【车载开发系列】诊断故障码DTC的格式标识符

    [车载开发系列]诊断故障码DTC的格式标识符 诊断故障码DTC的格式标识符 [车载开发系列]诊断故障码DTC的格式标识符 一.DTC格式标识符概念 二.DTC格式标识符的运用 1)DTCByXXXXM ...

  6. go语言web开发系列之五:gin用zap+file-rotatelogs实现日志记录及按日期切分日志

    一,安装需要用到的库: 1,安装zap日志库: liuhongdi@ku:/data/liuhongdi/zaplog$ go get -u go.uber.org/zap 2,安装go-file-r ...

  7. python爬虫基础项目教程_Python爬虫开发与项目实战_Python教程

    资源名称:Python爬虫开发与项目实战 内容简介: 随着大数据时代到来,网络信息量也变得更多更大,基于传统搜索引擎的局限性,网络爬虫应运而生,本书从基本的爬虫原理开始讲解,通过介绍Pthyon编程语 ...

  8. python爬取数据的原理_Python爬虫原理

    前言 简单来说互联网是由一个个站点和网络设备组成的大网,我们通过浏览器访问站点,站点把HTML.JS.CSS代码返回给浏览器,这些代码经过浏览器解析.渲染,将丰富多彩的网页呈现我们眼前: 一.爬虫是什 ...

  9. python table数据抓取_Python爬虫:数据抓取工具及类库详解

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: ncepu_Chen PS:如有需要Python学习资料的小伙伴可以 ...

最新文章

  1. java课程心得_javaweb课程心得体会(三)
  2. 忘记mysql 密码的取回方法
  3. 前端开发中的 正则表达式 及常用正则表达式大全
  4. [VTK]基于VTK的任意平面切割
  5. 前端证券项目_证监会公告[2018]6号 证券公司投资银行类业务内部控制指引
  6. JQuery全选反选 随其他checkbox自动勾选全选反选
  7. ubuntu14.04 LTS版本下安装配置gem5环境
  8. JavaScript学习(八十四)—变量
  9. 计算机丢失msvcrtdll怎么修复,雨林木风修复msvcrtdll 【操作方案】 的详细_
  10. 产品经理面试题目转载
  11. ndows 内存诊断工具,win10内存诊断工具 win10自带内存诊断工具的使用
  12. 如何将较大的PDF文件压缩变小?PDF压缩方法!
  13. 张尧浠:美股反弹避险情绪降温、黄金迎美零售看回撤力
  14. SEM和TEM的相同点和不同点
  15. 梅花雨日历控件英文版
  16. 交叉验证stratified k-fold cv与shuffle等常用cv方法
  17. P4279 [SHOI2008]小约翰的游戏(博弈论)(Anti-SG)
  18. 回首步入社会的两个月
  19. Objective-C 2.0 Morden Runtime
  20. 你还在描等高线地形图?我已经用这款软件做完了地形分析

热门文章

  1. 000+0000 格式的时间转成 年月日
  2. python工作空间_Python保存工作空间的数据(pickle your data)
  3. java程序自动重启_java程序自动重启
  4. php js多语言切换,php简单实现多语言切换的方法_php技巧
  5. Android 换肤功能的实现(Apk插件方式)
  6. LeetCode 669. 修剪二叉搜索树(Trim a Binary Search Tree)
  7. springboot开篇 (一)简单邮件发送
  8. perf 函数调用性能(函数流程图)
  9. android emulator虚拟设备之qemu pipe分析(三)
  10. Android start stop命令使用