好,這一小節來說講怎麼對日期格式進行處理,咱們再來看看那難看的日期,這將會是它最後一次出如今咱們的視線中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