• 升级python的sqlite库版本


    今天了解了一下用python获取chrome cookie信息,在研究的过程中,发现打开数据库失败,后来调查了一下发现是由于sqlite3库太老的缘故,起码需要3.8以上,然后看了一下python 2.7.11的sqlite3版本,竟然是3.6的,于是便开始着手研究如何升级python的sqlite3库,最终完美升级到了3.13版本,这里给大家一个参考。

    查看python的sqlite3版本

    import sqlite3
    print sqlite3.sqlite_version
    

    我们可以通过安装pysqlite库来升级python的sqlite3库版本,最简单的方法当然是直接在命令行输入pip install pysqlite 如果你直接成功了,那就不需要下面繁琐的步骤了。

    我这边在编译的过程中出现了问题,所以在pypi下载了pysqlite的源码包,准备自己编译。 pysqlite的源码编译依赖sqlite3库和头文件,通过运行pysqlite中的setup.py build 命令,我发现使用的是vc9.0的编译器,我正好安装了vs2008,如果你没有安装,可以下一个微软提供的编译套件,网址如下

    Microsoft Visual C++ Compiler for Python 2.7

    然后我们需要编译sqlite3,当然如果你有最新的sqlite3.h和sqlite3.lib的话就不需要这一步,下面提供了编译好的lib和dll文件。

    编译sqlite3需要去官网下载两个包,一个源码包,一个windows平台的dll包

    sqlite3官网下载页面

    然后解压源码包,把dll包里面的def文件放进源码文件夹中。接着我们需要修改sqlite3.c文件,添加两个宏

    #define SQLITE_ENABLE_RTREE 1
    #define SQLITE_ENABLE_COLUMN_METADATA 1
    

    然后便可以用vs2008的commandline进行编译,你也可以建一个vs2008的dll工程,这里是我建好的,也提供了编译好的dll和lib的下载

    sqlite3 for vs2008

    然后把头文件放进pysqlite的src文件夹,把lib放进pysqlite根目录(src上一层),接着运行setup.py buildsetup.py install,然后一切就ok了!

  • 相关阅读:
    并查集的来龙去脉
    改变像素
    PHP自学之路-----javascript基础入门
    推荐管理类图书
    ewebeditor编辑器ASP/ASPX/PHP/JSP版本漏洞利用总结及解决方法
    PHP文件包含漏洞剖析
    文件上传漏洞总结
    服务器软件解析漏洞总结
    JAVA环境变量配置
    Python2.x与Python3.x的区别
  • 原文地址:https://www.cnblogs.com/magicdmer/p/5692703.html
Copyright © 2020-2023  润新知