Python数据持久化存储实现方法分析


Posted in Python onDecember 21, 2019

本文实例讲述了Python数据持久化存储实现方法。分享给大家供大家参考,具体如下:

1、pymongo的使用

前三步为创建对象

  • 第一步创建连接对象
conn = pymongo.MongoClient('IP地址',27017)
  • 第二步创建库
db = conn['库名']
  • 第三步创建表
myset = db['集合名']
  • 第四步把数据插入数据库
myset.inset.one({})
#!/usr/bin/python
# -*- coding: utf-8 -*-
# @Time : 2019/6/26 8:56
# @Author : #####
# @Site :
# @File : 猫眼电影_mongo存储.py
# @Software: PyCharm
from urllib import request
import re
import time
import pymongo
class MaoyanSpider(object):
  def __init__(self):
    self.headers={'User-Agent':'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.26 Safari/537.36 Core/1.63.5221.400 QQBrowser/10.0.1125.400'}
    #用来计数
    self.page=1
    #连接对象
    self.coon =pymongo.MongoClient('locslhost',27017)
    #创建库对象
    self.db=self.coon['maoyaodb']
    #集合对象
    self.myset=self.db['top100']
  def get_page(self,url):
    req = request.Request(url,headers=self.headers)
    res = request.urlopen(req)
    html = res.read().decode('utf-8')
    self.parse_page(html)
  def parse_page(self,html):
    p = re.compile( '<div class="movie-item-info">.*?title="(.*?)".*?class="star">(.*?)</p>.*?class="releasetime">(.*?)</p>',re.S)
    r_list = p.findall(html)
    self.write_mongo(r_list)
  def write_mongo(self,r_list):
    for r_t in r_list:
      d={
        '电影名称:':r_t[0].strip(),
        '电影主演:':r_t[1].strip(),
        '上映时间:':r_t[2].strip()
      }
    #插入数据库
      self.myset.inset.one(d)
  def work_on(self):
    for pn in range(0,41,10):
      url = 'https://maoyan.com/board/4?offset=%s' % str(pn)
      self.get_page(url)
      print('第%d页爬取成功' % self.page)
      self.page += 1
      time.sleep(4)
if __name__ == '__main__':
  begin = time.time()
  spider = MaoyanSpider()
  spider.work_on()
  end = time.time()
  print("执行时间%.2f" % (end - begin)) #注不完美,仍然需修改

2、mysql的使用

Mysql-front可视化工具,建库建表添加字段

1、创建连接对象:db = pymysql.connet

2、创建游标对象:cursor = db.sursor

3、执行命令:cursor.execute()

4、提交到数据库执行

5、关闭:cursor.close

mysql-Front使用流程

1、创建数据库:

localhost--数据库--新建---数据库

数据库名改为maoyan (项目mysql库名)--- 字符集utf8 ---确定

2、创建表:

流程:选中maoyao数据库 --选中数据 ----新建 ----出现添加菜单 ---名称改为top100 ---创建成功

3、往表格中添加字段:

流程:选中top100表单  --- 数据库  ----新建  ----字段  ---出现添加界面 ----名称改为name  ---默认varchar  ---- 长度50  --确定

用同样的方法穿件字段star和time

ID一般设置为int 长度视情况而定

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
使用Python下载Bing图片(代码)
Nov 07 Python
python显示生日是星期几的方法
May 27 Python
python使用str &amp; repr转换字符串
Oct 13 Python
使用python根据端口号关闭进程的方法
Nov 06 Python
python 统计一个列表当中的每一个元素出现了多少次的方法
Nov 14 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
May 06 Python
Python实现网页截图(PyQT5)过程解析
Aug 12 Python
用python拟合等角螺线的实现示例
Dec 27 Python
Python3搭建http服务器的实现代码
Feb 11 Python
pycharm不能运行.py文件的解决方法
Feb 12 Python
详解Python修复遥感影像条带的两种方式
Feb 23 Python
python数字转对应中文的方法总结
Aug 02 Python
python cv2截取不规则区域图片实例
Dec 21 #Python
Python lxml模块的基本使用方法分析
Dec 21 #Python
python Manager 之dict KeyError问题的解决
Dec 21 #Python
tornado+celery的简单使用详解
Dec 21 #Python
Python selenium的基本使用方法分析
Dec 21 #Python
Flask框架搭建虚拟环境的步骤分析
Dec 21 #Python
Django restframework 框架认证、权限、限流用法示例
Dec 21 #Python
You might like
解决文件名解压后乱码的问题 将文件名进行转码的代码
2012/01/10 PHP
用php制作简单分页(从数据库读取记录)的方法详解
2013/05/04 PHP
Yii核心组件AssetManager原理分析
2014/12/02 PHP
Symfony2框架创建项目与模板设置实例详解
2016/03/17 PHP
PHP中常用的数组操作方法笔记整理
2016/05/16 PHP
PHP crc32()函数讲解
2019/02/14 PHP
js 金额格式化来回转换示例
2014/02/23 Javascript
Chrome下ifame父窗口调用子窗口的问题示例探讨
2014/03/17 Javascript
PHP开发者必须掌握的6个关键字
2014/04/14 Javascript
js实现的四级左侧网站分类菜单实例
2015/05/06 Javascript
javascript事件委托的方式绑定详解
2015/06/10 Javascript
JS实现DIV容器赋值的方法
2015/12/14 Javascript
CSS+jQuery实现简单的折叠菜单
2016/12/20 Javascript
jQuery编写textarea输入字数限制代码
2017/03/23 jQuery
JS操作时间 - UNIX时间戳的简单介绍(必看篇)
2017/08/16 Javascript
jquery一键控制checkbox全选、反选或全不选
2017/10/16 jQuery
webuploader实现上传图片到服务器功能
2018/08/16 Javascript
js canvas实现5张图片合成一张图片
2019/07/15 Javascript
VUE单页面切换动画代码(全网最好的切换效果)
2019/10/31 Javascript
JavaScript进阶(四)原型与原型链用法实例分析
2020/05/09 Javascript
npm ci命令的基本使用方法
2020/09/20 Javascript
[03:05]《我与DAC》之xiao8:DAC与BG
2018/03/27 DOTA
各个系统下的Python解释器相关安装方法
2015/10/12 Python
Python遍历目录中的所有文件的方法
2016/07/08 Python
Python 基础知识之字符串处理
2017/01/06 Python
python+opencv打开摄像头,保存视频、拍照功能的实现方法
2019/01/08 Python
使用python判断jpeg图片的完整性实例
2019/06/10 Python
python被修饰的函数消失问题解决(基于wraps函数)
2019/11/04 Python
Dr. Martens马汀博士官网:马丁靴始祖品牌
2016/10/15 全球购物
Perfumetrader荷兰:香水、化妆品和护肤品在线商店
2017/09/15 全球购物
城市轨道专业个人求职信范文
2013/09/23 职场文书
音乐专业应届生教师求职信
2013/11/04 职场文书
学习焦裕禄同志为人民服务思想汇报
2014/09/10 职场文书
2014年乡镇卫生院工作总结
2014/11/24 职场文书
2016七夕情人节广告语
2016/01/28 职场文书
win10电脑关机快捷键是哪个 win10快速关机的几种方法
2022/08/14 数码科技