Scrapy连接MySQL数据库

一、Mysql安装
3.4以上安装命令:pip install PyMySQL
3.4以下安装命令:pip install MySQLdb

二、Mysql的使用

在pipelines.py文件引入MySQL,引入命令import pymysql.cursors。引入之后,就可以编写具体的类了,首先我们需要创建数据库的连接,创建数据库连接之前,需要确保你已经成功安装了MySQL并且已经在MySQL里面创建好了表、字段,并且MySQL已经启动。


1、创建数据库连接
def __init__(self):
        # 连接数据库
        self.connect = pymysql.connect(
            host='127.0.0.1',#数据库地址
            port=3306,# 数据库端口
            db='scrapyMysql', # 数据库名
            user = 'root', # 数据库用户名
            passwd='root', # 数据库密码
            charset='utf8', # 编码方式
            use_unicode=True)

        # 通过cursor执行增删查改
        self.cursor = self.connect.cursor()

2、实现mysql的入库

def process_item(self, item, spider):

        self.cursor.execute(
            """insert into chuanke(name, type, view, price ,teacher, url)
            value (%s, %s, %s, %s, %s, %s)""",#纯属python操作mysql知识,不熟悉请恶补
            (item['name'],# item里面定义的字段和表字段对应
             item['type'],
             item['view'],
             item['price'],
             item['teacher'],
             item['url']))

        # 提交sql语句
        self.connect.commit()

        return item#必须实现返回

3、settings.py里面开启MySQLPipline

ITEM_PIPELINES = {
    'scrapyMysql.MySQLPipeline.MySQLPipeline': 1,
     #格式为:'项目名.文件名.类名':优先级(越小越大)
}

你可能感兴趣的:(#,Python爬虫)