學(xué)習(xí)階段二(update:2014-3-25):實(shí)現(xiàn)功能:代碼中加入for循環(huán),批量抓取全部tag,存放到本地txt代碼如下:
# -*- coding: cp936 -*-
import urllib2
import re
raw_text=urllib2.urlopen('http://movie.douban.com/tag/?view=type').read()
text0=re.findall('"./.*?"',raw_text)#初步抓取tag,findall輸出為list
text1=''.join(text0)#list轉(zhuǎn)str,方便replace
text2=text1.replace('"./','').replace('"','\n')#tag提取完成
text3=[]#新建空list,方便后面append
for text4 in text2.split('\n'):#for in對象需為list,用split將str轉(zhuǎn)為list
tagurl='http://movie.douban.com/tag/%s'%text4#講URL前綴同tag拼接,方便后期多tag抓取
text3.append(tagurl)#循環(huán)賦值到空列表
text5='\n'.join(text3)#排版格式,\n換行符
e=file('douban_movie6.txt','w')
e.write(text5)
e.close()

學(xué)習(xí)總結(jié):1、多用print,不僅可以幫助自己更好的排查錯(cuò)誤,也可以更好的理解程序的運(yùn)行邏輯。2、多用print type()。現(xiàn)階段對每種函數(shù)生成結(jié)果的存儲類型還不熟悉,根據(jù)想當(dāng)然的思路寫通常會報(bào)錯(cuò),都是數(shù)據(jù)類型不支持。3、初步明白for in的用法,對% 用法進(jìn)一步了解4、list.append() 進(jìn)一步了解。接觸一種函數(shù)不僅要明白怎么用,還得留意函數(shù)輸出后的數(shù)據(jù)類型