scrapy笔记——python的时间转换

 

1 import datetime
2 GMT_FORMAT = '%M %H %d %m %w'
3datetime.datetime.utcnow().strftime(GMT_FORMAT)

 

1#按corn格式显示当前时间
2#minute hour day month dayofweek
3 import datetime
4 CORN_FORMAT = '%M %H %d %m %w'
5datetime.datetime.utcnow().strftime(CORN_FORMAT)

 

操作系统:fedora  开发语言:python   爬虫框架:scrapy   数据库:mysql   数据库连接模块:mysqldb   网页生成时间和网页抓取的当前时间输入到数据库中。 在执行代码时,出现Warning: Out of range value for column ‘f_grap_time’ at row 1这样的错误。直接翻译是,数据位数超过字段能存的最大长度。

问题原因:

事实上是数据格式的问题。上传时数据直接调用了网页http头的Date和time函数返回的时间。但是数据库要求是datetime格式。   抓下的网页的 response.headers[“Date”]保存了网页的生成时间,读取出来其实就是字符串。格式类似这样“Wed, 04 Jun 2014 13:06:02 GMT’。 使用time函数得出的时间是一个浮点数,类似“1401887801.07” 数据库要求的输入格式是datetime格式,可以是11位的10进制数字,或者“2014-06-04 13:06:02“形式的字符串。

解决方法:
1//使用strftime和strptime函数,有点类似c语言的printf和scanf形式。
2//strftime函数可以把datetime格式转换成指定格式的字符串。
3//strptime函数则是反过来,把字符串转换成datetime格式。
4//两个函数都需要datetime包

 

1#首先对于网页时间格式转换成datetime。strftime函数用法后面讲。
2 GMT_FORMAT = '%a, %d %b %Y %H:%M:%S GMT'
3#输出格式的模式字符串
4 TIME = 'Wed, 04 Jun 2014 13:06:02 GMT'
5#对应的时间字符串
6datetime.datetime.strptime(TIME, GMT_FORMAT)

 

1#当前时间可以直接使用datetime不需要time包
2datetime.datetime.now()

 

PS:
1#strftime用法
2# http包头时间格式显示当前时间
3 GMT_FORMAT = '%a, %d %b %Y %H:%M:%S GMT'
4datetime.datetime.utcnow().strftime(GMT_FORMAT)

 python的时间格式化输出对照表:

说明符号
星期几的简写 Weekday name, abbr.%a
星期几的全称 Weekday name, full%A
月份的简写 Month name, abbr.%b
月份的全称 Month name, full%B
标准的日期的时间串 Complete date and time representation%c
十进制表示的每月的第几天 Day of the month%d
24小时制的小时 Hour (24-hour clock)%H
12小时制的小时 Hour (12-hour clock)%I
十进制表示的每年的第几天 Day of the year%j
十进制表示的月份 Month number%m
十时制表示的分钟数 Minute number%M
十进制的秒数 Second number%S
第年的第几周,把星期日做为第一天(值从0到53)Week number (Sunday first weekday)%U
十进制表示的星期几(值从0到6,星期天为0)weekday number%w
每年的第几周,把星期一做为第一天(值从0到53) Week number (Monday first weekday)%W
标准的日期串 Complete date representation (e.g. 13/01/08)%x
标准的时间串 Complete time representation (e.g. 17:02:10)%X
不带世纪的十进制年份(值从0到99)Year number within century%y
带世纪部分的十制年份 Year number%Y
时区名称,如果不能得到时区名称则返回空字符。Name of time zone%z,%Z
百分号%%

 

转载请注明:旅途@KryptosX » scrapy笔记——python的时间转换

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值