0
点赞
收藏
分享

微信扫一扫

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

书呆鱼 2022-02-11 阅读 77


项目简介

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

​​完整代码​​

因 为 上 一 节 已 经 讲 了 如 何 插 入 到 e x c e l , 现 在 说 插 入 数 据 库 \color{Red}因为上一节已经讲了如何插入到excel,现在说插入数据库 因为上一节已经讲了如何插入到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()



举报

相关推荐

0 条评论