好,这一小节来说讲怎么对日期格式进行处理,咱们再来看看那难看的日期,这将会是它最后一次出如今咱们的视线中python
2016/01/14 ·
咱们的处理就是将空格,特殊字符和字符去掉,最后只保留 "2016/01/14" 我选择的依然是RE,有不少种写法,做为参考,我这里给出两种post
使用RE和python分割字符串的方法url
去点字符串中的空格,并以&来分割字符串,选分割后的第一块数据
code
re.sub(r'\s',"",item[2]).split(r'&')[0]
2. 仅仅使用REorm
RE匹配日期的格式xxxx/xx/xx,将所匹配到的内容返回来
blog
re.search(r'\d{4}/\d{2}/\d{2}',str).group()
而后咱们的代码就变成了这样utf-8
#!/usr/bin/env python # -*- coding:UTF-8 -*- __author__ = '217小月月坑' ''' deal with the date format ''' from bs4 import BeautifulSoup import urllib2 import re import sys reload(sys) sys.setdefaultencoding( "utf-8" ) url = 'http://blog.jobbole.com/all-posts/' request = urllib2.Request(url) response = urllib2.urlopen(request) contents = response.read() pattern = re.compile(r'class="archive-title".*?href="(.*?)".*?title="(.*?)">.*?<br />(.*?)<a.*?',re.S) items = re.findall(pattern,contents) for item in items: print item[0], item[1], re.sub(r'\s',"",item[2]).split(r'&')[0]
将日期格式处理好以后输出是这样子的字符串
终于看起来顺眼一些了,如今再来谈论下一个问题,为何要大费周章的对这些日期的输出格式进行处理
it