一:引入文件

from sqlalchemy import Column, Integer, VARCHAR, Text
from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker Base = declarative_base() #构造基类

二:表结构

class TiKu(Base):
__tablename__ = 'spider_tiku'
id = Column(Integer(), primary_key=True, autoincrement=True)
kaoshi = Column(VARCHAR(200), nullable=True)
subject = Column(VARCHAR(200), nullable=True)
chapter = Column(VARCHAR(200), nullable=True)
section = Column(VARCHAR(200), nullable=True)
tixing = Column(VARCHAR(20), nullable=True)
question_case = Column(Text(), nullable=True)
question = Column(Text, nullable=True)
a = Column(VARCHAR(1000), nullable=True)
b = Column(VARCHAR(1000), nullable=True)
c = Column(VARCHAR(1000), nullable=True)
d = Column(VARCHAR(1000), nullable=True)
e = Column(VARCHAR(1000), nullable=True)
other_sections = Column(VARCHAR(3000), nullable=True)
answer = Column(VARCHAR(500), nullable=True)
analysis = Column(Text(), nullable=True)
source = Column(Text(), nullable=True) def __str__(self):
return '< {} {} {}>'.format(self.kaoshi, self.subject, self.chapter)

三:sqlite orm

class SqliteOrm(object):

    def __init__(self, path):
sqlite_path = 'sqlite:///{}'.format(path)
self.engine = create_engine(sqlite_path)
Session = sessionmaker(bind=self.engine)
self.session = Session() def create_table(self):
self.drop_table()
Base.metadata.create_all(self.engine) def insert(self, obj):
# 将该实例插入到表
self.session.add(obj)
self.session.commit() def insert_many(self, batch_data: list):
# 一次插入多条记录形式
self.session.add_all(batch_data)
self.session.commit() def drop_table(self, table_name='spider_tiku'):
try:
self.execute_sql('drop table %s' % table_name)
except Exception as e:
pass def execute_sql(self, sql):
self.session.execute(sql)

sqlAlchemy搭建sqliteOrm的更多相关文章

  1. Flask RESTful API搭建笔记

    之前半年时间,来到项目的时候,已经有一些东西,大致就是IIS+MYSQL+PHP. 所以接着做,修修补补,Android/iOS与服务器数据库交换用PHP, Web那边则是JS+PHP,也没有前后端之 ...

  2. 【Python】部署上手App后端服务器 - Linux环境搭建安装Python、Tornado、SQLAlchemy

    基于阿里云服务器端环境搭建 文章目录 基于阿里云服务器端环境搭建 配置开发环境 安装 Python 3.8.2 安装 Tornado 安装 MySQL 安装 mysqlclient 安装 SQLAlc ...

  3. db2+python+sqlchemy环境的搭建

    记录了通过sqlalchemy 管理db2数据库的环境搭建 1.db2数据库安装配置 利用winscp复制iso文件到/mnt/IBM_db2 目录下 IBM_db2为自己创建 重命名 mv IBM\ ...

  4. pip高级使用技巧以及搭建自己的pypi服务器

    =========================  pip 访问非官方pypi源, 以及代理的设置=========================在Windows下安装某些Python的C ext ...

  5. mysql学习笔记(sqlalchemy安装及简单使用)

    博主最近在研究接口API自动化测试,之前设计的通过excel来实现自动化测试的框架实际使用中还是有很多局限性 这次博主的思路是: 1 搭建接口API管理平台 支持数据库方便维护 2 自动化测试平台可直 ...

  6. 使用Sublime Text搭建python调试环境

    原文地址:http://blog.csdn.net/wenxuansoft/article/details/38559731 pycharmt等IDE虽然用着爽,但毕竟在速度.资源上还是比较让人不爽的 ...

  7. Flask+Mysql搭建网站之数据库问题

    关于 SQLAlchemy (1.0.8) 和 Flask-SQLAlchemy (2.0) SQLALchemy 是Python语言的SQL工具包及对象关系映射(ORM)工具.Flask-SQLAL ...

  8. Python+django开发环境搭建

    Python目前主版本有2个,2.7+和3.4+ 新入手,决定还是从2.7开始 先从python官网https://www.python.org/下载python2.7.10,64位版本(这里注意,选 ...

  9. flask框架+pygal+sqlit3搭建图形化业务数据分析平台

    一. 前言 先说下主要的框架和主要的图形库的特点:(个人见解) Django:python开发的一个重量级的web框架,集成了MVC和ORM等技术,设计之初是为了使开发复杂的.数据库驱动的网站变得简单 ...

随机推荐

  1. CDS视图篇 1

    CDS视图概览 CDS是Core Data Services的简称,是HANA数据库向上层ABAP应用层提供数据的一种高效的方式,CDS模型是基于数据库data definition language ...

  2. Windows .net服务器系列 wmic命令使用示例--Examples of WMIC commands for Windows .NET SERVER Family

    1.0 Method execution: NICCONFIG (Win32_NetworkAdapterConfiguration) WMIC NICCONFIG WHERE Index=1 CAL ...

  3. 雨田家园 delphi 拆分字符串

    最近在使用Delphi开发一种应用系统的集成开发环境.其中需要实现一个字符串拆分功能,方法基本原型应该是:procedure SplitString(src: string ; ch: Char; v ...

  4. 直接用的tar压缩

    将目录里的doc文件夹压缩成tar.gz tar -czf  doc.tar.gz   doc 解压tar.gz tar -xzvf doc.tar.gz 在不解压的情况下查看压缩包的内容: tar ...

  5. Tips for TMUX

    常用命令 tmux ls # 显示后台session列表 tmux new -t [name] # 新建session tmux a -t [name] # 进入session tmux kill-s ...

  6. spark osx:WARN NativeCodeLoader:62 - Unable to load native-hadoop library for your platform

    spark-env.sh文件中增加,确保${HADOOP_HOME}/lib/native目录下有libhadoop.so文件 export JAVA_LIBRARY_PATH=${HADOOP_HO ...

  7. 浅析 c# Queue

    1.Queue定义 System.Collections.Queue类表示对象的先进先出集合,存储在 Queue(队列) 中的对象在一端插入,从另一端移除. 2.优点 1.能对集合进行顺序处理(先进先 ...

  8. Flutter easyrefresh示例 上拉加载+下拉刷新

    官方示例,简单改了下,实现功能为主. 代码如下: import 'dart:async'; import 'package:flutter/material.dart'; import 'packag ...

  9. 共享文件word / excel /ppt 被用戶自己锁定无法编辑-解決方法

    共享文件word / excel /ppt 被用戶自己鎖定無法編輯,但用戶嘗試過關閉所有文件和重啓過系統,依然無法編輯. 搜到解決方法: Just in case someone looking fo ...

  10. ELK7.4.2安装教程

    ELK简介 "ELK"是三个开源项目的首字母缩写,这三个项目分别是:Elasticsearch.Logstash 和 Kibana.Elasticsearch 是一个搜索和分析引擎 ...