python3连接mysql 稍微进阶 + 日期处理

1.踩了个操作中文的坑,结果发现之前的文章中有强调了,在连接处加:charset="utf8"

conn = pymysql.connect(host = '127.0.0.1', unix_socket = '/tmp/mysql.sock', 
user = 'root' , password = '******', db = 'mysql', charset = 'utf8s')

 

2. 发现报错,因为爬虫返回的list有2个数据,比如作者字段['账号已注销','生成外链接'],大概就是这么个样子,

然后调整了下抓取字段,将extract  改成  extract_first;

 

3. 连接SQL不报错了,但是根本写不进去内容啊,特意写了个最简单的insert语句,发现无反应,最后google出原因,

应该加conn.commit();

 

 

贴上第一个表的字段:

CREATE TABLE `songList` (
  `id` mediumint(8) AUTO_INCREMENT NOT NULL,
  `title` varchar(255) DEFAULT NULL,
  `author` varchar(255) DEFAULT NULL,
  `createTime` varchar(255) DEFAULT NULL,
  `favorite` varchar(255) DEFAULT NULL,
  `share` varchar(255) DEFAULT NULL,
  `url` varchar(255) DEFAULT NULL,
  `ddata` varchar(255) DEFAULT NULL,
  `add_date` int(11) DEFAULT 0,
  PRIMARY KEY (`id`),
  KEY `add_date` (`add_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

后来把add_date改成str了:

ss = time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
print(type(ss))
print(ss)
<class 'str'>
2017-04-23 11:39:48

Process finished with exit code 0

贴上日期转化的内容:

'''
strftime(format[, tuple]) -> string
将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
python中时间日期格式化符号:
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12) 
%M 分钟数(00=59)
%S 秒(00-59)
'''

日期部分来源:http://www.cnblogs.com/wanpython/archive/2010/08/13/1798738.html

感兴趣可以去查看更详细内容




posted @ 2017-04-23 11:43  vivi~  阅读(469)  评论(1编辑  收藏  举报