scrapy通过item类直接创建数据库中的数据表
思路如下:
- 首先在item中写入需要构造的item
- 将item的key得到,构造dataframe
- 借助dataframe构造数据表
- 最后使用sql构造可以在数据库中自增长的主键
完整代码
# Define here the models for your scraped items
#
# See documentation in:
# https://docs.scrapy.org/en/latest/topics/items.htmlimport scrapyclass CompanyInfoItem(scrapy.Item):"""企业基本信息"""company_code = scrapy.Field() # 企业代码codecompany_name = scrapy.Field() # 企业名称company_ = scrapy.Field() # 组织形式province_location = scrapy.Field() # 地域if __name__ == '__main__':"""用item生成数据库"""import pandas as pdmy_item = CompanyInfoItem()df = pd.DataFrame(my_item.fields)# 连接数据库from sqlalchemy import create_enginedb_name = "test_db" # 要保存的数据库名table_name = "my_item_table" # 要保存的表名# engine = create_engine("mysql+pymysql://用户名:密码@127.0.0.1:3306/数据库名")engine = create_engine('mysql+pymysql://testuser:testpassword@localhost:3306/{}'.format(db_name), encoding='utf8')engine.connect()# save to databasedf.to_sql(table_name, engine, if_exists='replace', index=False)# 增加主键with engine.connect() as con:con.execute("""ALTER TABLE `{}`.`{}` \ADD COLUMN `id` INT NOT NULL AUTO_INCREMENT, \ADD PRIMARY KEY (`id`);""".format(db_name, table_name))
scrapy通过item类直接创建数据库中的数据表相关推荐
- 在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号、书名、单价、数量)。 利用JDBC连接数据库dbjava,实现数据表的增删 改查
题目 1.在MySql数据库中创建数据库dbjava,数据表book,字段包括bno,bname,price,count(编号.书名.单价.数量). 2.利用JDBC连接数据库dbjava,实现数据表 ...
- mysql创建数据库及中英文数据表--插入数据
目录 一.创建数据库及数据表 二.插入数据 三.中文数据表创建 一.创建数据库及数据表 1.用create database 创建school数据库: 2.进入school数据库,创建info数据表: ...
- mysql表的组成_数据库中的数据表由什么组成?
在数据库中,数据表是由表名.表中的字段和表的记录三个部分组成的.在建立表之前都必须先设计它的结构,表结构描述了一个表的框架.设计表结构实际上就是定义组成一个表的字段个数,每个字段的名称.数据类型和长度 ...
- MySQL数据库中的数据表
1.创建数据表 创建数据表的,使用字符串应该遵循的原则 从速度方面考虑,要选择固定的列,可以使用CHAR类型 要节省空间,使用动态的列,可以使用VARCHAR类型 要将列中的内容限制为一种选择,可以使 ...
- 从数据库中取出数据表,导入并生成excel
@RequestMapping("/numericalStatement1")public void createExcel(HttpServletResponse resp) t ...
- django迁移数据makemigrations不创建APP中的数据表
有一段时间没看python今天删除数据库重新建立迁移的时候 python manage.py makemigrations python manage.py migrate 发现死活不能创建app中自 ...
- 如何批量删除mysql的数据库_如何快速批量删除Mysql数据库中的数据表
一个mysql数据库中,是可以同时安装几个网站程序的,在使用中,我们只需要用不同的数据库表前缀来区分就可以了.但随着我们不断调试,那么数据 库中的表,就会一天天的多起来,如一个一个的删除就很麻烦.很辛 ...
- MySQL批量修改数据库中的数据表名称
1.一种使用存储过程解决,结果,总是如下提示 Expression #3 of SELECT list is not in GROUP BY clause and contains n 2.使用 CO ...
- oracle 表导出pdm文件,如何将数据库中已有表导入到powerDesigner生成pdm文件
1.create new PDM: 2.select database menu; 3.click Reverse Engineer database : 4.then choose your sc ...
最新文章
- AndroidStudio2.2 Preview3中NDK开发之CMake和传统 JNI在目录结构和配置文件上的区别
- python增删改查的框架_python的Web框架,Django的ORM,模型基础,MySQL连接配置及增删改查...
- 【LDA学习系列】Dirichlet分布python代码
- 三 虚拟机安装Deepin
- 如何高效的阅读Hadoop源代码?Hadoop的源代码写的怎么样?
- Java 中的线程安全的类
- Oracle 开窗函数--转
- 解决Surface Pro外接移动硬盘经常睡眠的问题
- 版人人商城V3.7.6开源解密版小程序前端+后端+安装使用视频教程
- 这样能收录,原理是用的凤凰新闻采集工具
- 如何衡量开发人员生产力的 10 个技巧
- 六度分离 (Floyd算法)
- 秀!搭建一个永久运行的个人服务器!
- python编码格式 兼容中文_python中文编码(汉字乱码问题解决方案)
- Java—初识Java与开发环境的安装
- 【数据分析46讲】基础篇
- Postman测试http请求返回415状态码的解决
- 分享110个PHP源码,总有一款适合您
- c++游戏编程(1)开发环境与工具函数
- Kaggle实战:电子游戏销量分析(Vedio Game Sales)
热门文章
- c语言运行后出现xt073,2017年北京工业大学城市交通学院894C语言与数据结构之C程序设计考研强化模拟题...
- python中print(chr(65))_Python语句print(chr(97))的运行结果是( )。_学小易找答案
- python的前端开发_Python开发【前端】:html
- Python数据处理 PCA/ZCA 白化(UFLDL教程:Exercise:PCA_in_2DPCA_and_Whitening)
- Dubbo SPI的基础Cooma微容器
- Windows 7如何禁止在C盘上安装软件?
- 自动化运维脚本语言之expect实践学习(1)
- 半年之殇:困扰半年的MSP430的I2C总线问题在今天解决,发文总结
- 【Qt】qt库结构及示例
- 业务、架构、技术,我们应该关注什么