python scrapy 插入数据库的操作
需要安装这个
pymysql
写法还是很简单的 # -*- coding: utf-8 -*- # Define your item pipelines here
#
# Don't forget to add your pipeline to the ITEM_PIPELINES setting
# See: https://doc.scrapy.org/en/latest/topics/item-pipeline.html
import pymysql
import douban.settings as settings class DoubanPipeline(object):
def __init__(self):
# 连接数据库
self.connect = pymysql.connect(
host=settings.MYSQL_HOST,
db=settings.MYSQL_DBNAME,
user=settings.MYSQL_USER,
passwd=settings.MYSQL_PASSWD,
charset='utf8',
use_unicode=True)
# 通过cursor执行增删查改
self.cursor = self.connect.cursor();
def process_item(self, item, spider):
#数据库的操作
try:
# 插入数据
self.cursor.execute(
"""insert into course(name,teacher, content, comment )
value (%s, %s, %s, %s)""",
( item['bookName'],
item['author'],
item['score'],
item['comment']))
# 提交sql语句
self.connect.commit()
except Exception as e:
print("错误在这里>>>>>>>>>>>>>",e,"<<<<<<<<<<<<<错误在这里") #写入文件txt
with open('xuetang-0823.txt','a',encoding='utf-8') as fl:
fl.write(str(item['xuhao'])+','+item['bookName']+','
+item['author']+','
+item['score'].replace("\n","").replace("\t","").replace(",",",").replace("\r","")+','+item['comment'].replace("\n","").replace("\t","").replace("\r","")+'\n')
python scrapy 插入数据库的操作的更多相关文章
- python对oracle数据库的操作
1 Oracle数据库 1.1 Oracle环境配置&客户端连接 1.1.1 下载安装Oracle绿色版客户端instantclient: 到o ...
- python中mysql数据库的操作-sqlalchemy
MySQLdb支持python2.*,不支持3.* ,python3里面使用PyMySQL模块代替 python3里面如果有报错 django.core.exceptions.ImproperlyC ...
- python访问Oracle数据库相关操作
环境: Python版本:3.6.6 win系统:64位 Linux系统:64位 首先安装配置时,版本必须一致!包括:系统版本,python版本,oracle客户端的版本,cx_Oracle的版本! ...
- 文件夹文件遍历并插入数据库的操作,IO Directory File的递归操作
在我们管理内容管理系统时,数据量大时,对机器的依赖性就比较强了,比如,我要将一个文件夹中的很多图片上传到网站,一个个上传会很花时间,就想到了通过遍历文件夹得到文件名,并将路径与文件保存到数据库中对应的 ...
- python scrapy爬虫数据库去重方法
1. scrapy对request的URL去重 yield scrapy.Request(url, self.parse, dont_filter=False) 注意这个参数:dont_filter= ...
- Python创建插入数据库MySQL
首先要在控制台创建好数据库 mysql -u root -p 创建数据库 查看数据库 -------------------更新分割线(上面为新增...太久没用都忘了SQL基本命令了)-------- ...
- python之(mysql数据库操作)
前言:关心3步骤(此文章只针对python自动化根基展开描述) 什么是mysql数据库操作? 答:利用python对mysql数据库进行增, 删, 改, 查 操作 为什么要用python对mysql ...
- python scrapy 抓取脚本之家文章(scrapy 入门使用简介)
老早之前就听说过python的scrapy.这是一个分布式爬虫的框架,可以让你轻松写出高性能的分布式异步爬虫.使用框架的最大好处当然就是不同重复造轮子了,因为有很多东西框架当中都有了,直接拿过来使用就 ...
- python中的MySQL数据库操作 连接 插入 查询 更新 操作
MySQL数据库 就数据库而言,连接之后就要对其操作.但是,目前那个名字叫做qiwsirtest的数据仅仅是空架子,没有什么可操作的,要操作它,就必须在里面建立“表”,什么是数据库的表呢?下面摘抄自维 ...
随机推荐
- 凸优化&非凸优化问题
转载知乎大神的回答:Robin Shen 参考:https://www.zhihu.com/question/20343349
- 在Linux命令行执行python命令
在Linux的命令行执行python的某些命令: [root@centos7 ~]# echo "import sys ;print(sys.path)"|python3.6 [' ...
- Android 自定义TabHost,TabWidget样式
界面比较简单,要想做得漂亮换几张图片就可以了. 第一步:先在布局(这里用了main.xml创建时自动生成的)里面放上TabHost ,只要将TabHost控件托至屏幕中就可: <?xml ver ...
- <转载>http头 http://www.cnblogs.com/meil/archive/2007/03/06/665843.html
HTTP(HyperTextTransferProtocol)是超文本传输协议的缩写,它用于传送WWW方式的数据,关于HTTP协议的详细内容请参考RFC2616.HTTP协议采用了请求/响应模型.客户 ...
- Mybatis学习——resultMap使用
在实体和数据库字段一致 时直接使用resultType时可以的. 当字段不一致时,可以使用别名.使之一致. 以下讲解使用resultMap情况. 实体Order.java package pojo; ...
- PHP简单操作SqlServer数据库。
<?phpheader("content-type:text/html;charset=JBK");$serverName = ""; //数据库服务器地 ...
- Mysql 获取表属性
获取表字段信息: select column_name from information_schema.COLUMNS where table_name='表名' nformation_schema. ...
- spring cloud之路(1)
1.各个功能 springcloud 注册中心 Eureka负载均衡 Ribbon路由网关 Zuul断路器 Hystrix分布式配置 config服务调用跟踪 sleuth日志输出 elk 认证集成 ...
- APP-2.1-Hbuilder与夜神 & HbuilderX与夜神模拟器连接
经上一步完成Hbuilder.HbuilderX与夜神模拟器的安装,本次介绍下两者之间的连接设置. 1.三者的安装路径 Hbuilder:E:\SAP UI5\HBuilder HbuilderX:D ...
- 解决Mac上安装mysqlclient的错误
要想使用python操作mysql,那么就需要安装python操作数据库的驱动,由于mysqldb不支持python3,我选择安装mysqlclient, 命令行输入:pip3 install ...