1. 我们扒到了什么?
id, 名称, 上映年份,上映日期,所属类目, 导演,主演,片长,评分,星评,评价人数
2. 把这些数据做一个分类。
a..基本信息 :名称, 导演,上映年份, 所属类目, 片长
b.评价信息:评分,星评,评价人数
c.主演表: 主演(我在纠结要不要单独列一张表)
3 .表设计。现在有点蛋疼的是主键。用自增主键还是电影id做主键。经过我的多方面考虑,我慎重(草率)地决定,用电影id(反正都要建唯一索引,为什么不拿来当主键呢。。), 所以我刚才又在id那转了一下数据
m_id = re.search("[0-9]+", movie_url).group()
movie["id"] = int(m_id)
写着玩嘛,就是那么随意,有什么想法就改!!!
4. 建表。。也是蛋疼,我居然纠结过是用mysql还是mongodb, 马上就删自己一个耳光,你会mongodb嘛?感觉要是继续又开一个mongodb的坑,我就再也回不来这个爬虫了。
我也不傻不拉几地自己写建表sql了.直接用的SQLyog。稍微纠结了一下InnoDB和MyISAM。 我开始是想每次把一个电影的信息分别插入三个表,要不要用事务, 又想垃圾数据也不会扣我钱,所以用了MyISAM。毕竟就是大量的Insert和select
建表语句
CREATE DATABASE`douban`;USE`douban`;--基本信息表
CREATE TABLE`t_movie_info` (
`id`bigint(20) unsigned NOT NULL COMMENT '主键,豆瓣电影id',
`type`tinyint(4) DEFAULT NULL COMMENT '类型 0:电视剧,1:电影',
`name`varchar(30) DEFAULT NULL COMMENT '电影名字',
`director`varchar(50) DEFAULT NULL