目标:

  1. 对豆瓣top250,抓取排名,电影名,评分,评论人数,一句话精彩评论,然后保存到 mysql 中

第三方库:

  1. pymysql

遇到的问题:

  1. 编码问题,sql 语句中有中文下,插入数据库报错,已知数据库创建时编码设置为 utf-8,但是为何报错?

    在使用 pymysql 连接数据库时,指定编码即可:charset=”utf8″

     
  2. 执行 sql 语句后不生效?
    1. 对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务。

      commit()方法游标的所有更新操作,rollback()方法回滚当前游标的所有操作。每一个方法都开始了一个新的事务。

    2. 由于创建的时 Innodb 类型的数据库,支持事务,需要在执行完 sql后,添加 db.commit() 来提交事务

  3. 使用 pymysql 后报错?

    经Google发现,这是因为 import pymysql,在之前已经导入了这个第三方包,新建的文件名就不能用 pymysql.py ,不能和 import 的包名重复,修改为 douban.py 即可,?,真是来搞笑的

新建 python 数据库,并创建了一个 douban 的表:

完整代码:douban.py

效果图: