python爬虫(九、爬取豆瓣top250电影信息并插入数据库sqlite)

项目简介

豆瓣top250爬取下所有250部电影信息并保存到excel或者数据库

完整代码

e x c e l , \color{Red}因为上一节已经讲了如何插入到excel,现在说插入数据库

. \color{Red}Ⅰ.建立数据库

def init_db(dppath):    #初始化数据库
    sql='''
        create table movie250
        (
        id integer primary key autoincrement,
        title text,
        intorduce text,
        img_link text
        )
    '''	#sql语句,创建表,有三列分别是title,intorduce,img_link
    conn = sqlite3.connect(dppath)  #链接到数据库
    cursor = conn.cursor()  #获取游标(对象,类似excel的sheet)
    cursor.execute(sql)	#执行
    conn.commit()	#提交
    conn.close()

. \color{orange}Ⅱ.插入数据到数据库

def save_to_sqlite(dbpath,url): #保存到数据库
    #init_db(dbpath)    #我以前创建过这个数据库,所以注释掉
    conn = sqlite3.connect(dbpath)	#连接到数据库
    cur = conn.cursor()	#获取游标
    datalist = getdata(url)	#得到爬取的电影数据
    for data in datalist:	#循环每一部电影
        for index in range( len(data) ):	#循环每部电影的三个内容
            data[index] = '"'+data[index]+'"'	#插入数据库加上" "
        sql = '''
            insert into movie250
            (title,intorduce,img_link)
            values(%s)
        '''%",".join(data)   #%把后面的填充到前面的%s,join方法用逗号分隔
        cur.execute(sql)	#每部电影都执行这个sql语句插入
        conn.commit()
    cur.close()
    conn.close()

猜你喜欢

转载自blog.csdn.net/jziwjxjd/article/details/106883328