2015-04-30 27 views
0

該腳本應該做什麼修改才能打印出想要的結果?修復python失敗的腳本For循環

def dummy(url): 
     req = urllib.request.urlopen(url).read().decode('utf-8').replace("\n","") 
     getTag = re.search('<div class="eps_lst_tbn">(.*?)<div class="clear"></div>', req).group(1) 
     judul = re.findall('<div class="node">\r\t\t\t<div>(.*?)</div>',getTag) 
     link = re.findall('<a href="(.*?)">',getTag) 
     episode = re.findall('</a>\r\t\t\t<div>(.*?)</div>',getTag) 
     l=[] 
     num = 1 
     for i in link: 
     x = '<br/>(%s) %s - %s <a target="_blank">%s</a>' %(num,judul,episode,i) 
     l.append(x) 
     num = num+1 
     string = ''.join(l[0:3]) 
     return string 

目前的結果:

(1) ['a', 'b', 'c'] - ['1', '2', '3'] <u>http://url.com/a/1/</u> 
(2) ['a', 'b', 'c'] - ['1', '2', '3'] <u>http://url.com/b/2/</u> 
(3) ['a', 'b', 'c'] - ['1', '2', '3'] <u>http://url.com/c/3/</u> 

期望的結果:

(1) a - 1 <u>http://url.com/a/1/</u> 
(2) b - 2 <u>http://url.com/b/2/</u> 
(3) c - 3 <u>http://url.com/c/3/</u> 

回答

1

judulepisode不是字符串,它們是字符串列表。如果您想爲每個字符串顯示一個字符串,則必須使用索引。

for idx, href in enumerate(link): 
    x = '<br/>(%s) %s - %s <a target="_blank">%s</a>' %(idx+1,judul[idx],episode[idx],href) 
    l.append(x) 
+0

它的工作,謝謝:) – Updownge