我正在尝试制作一个python脚本,可以从subscene.com下载我如何遇见你母亲的字幕。 我是Python和编程的新手。
我希望将搜索结果放入列表中,然后打印,以便用户可以选择正确的URL。问题是我不知道如何从搜索结果中创建列表。有谁知道怎么做?
这是我到目前为止所做的:
import urllib
class Subtitle_downloader(object):
def __init__(self):
self.SearchCriteria = ['How.I.Met.Your.Mother']
self.Episode = str(raw_input('Enter episode: '))
self.Carateristics = str(raw_input('Enter caracteristics: ')) #'HDTV' for an example
self.SearchCriteria.append('S07E'+self.Episode)
self.SearchCriteria.append(self.Carateristics)
print self.SearchCriteria
def SubDL(self, SubUrl):
self.AllSubs = urllib.urlopen(SubUrl).readlines()
for item in self.AllSubs:
if self.SearchCriteria[0] and self.SearchCriteria[1] in item:
#Create a list
t=Subtitle_downloader()
t.SubDL('http://subscene.com/How-I-Met-Your-Mother-Seventh-Season/subtitles-90698.aspx')
答案 0 :(得分:0)
您可以使用列表理解:
def SubDL(self, SubUrl):
l = [item for item in urllib.urlopen(SubUrl).readlines()
if self.SearchCriteria[0] in item and self.SearchCriteria[1] in item]
for item in l:
print('An item: {}'.format(item))
答案 1 :(得分:0)
如果您不想使用列表推导(可能看起来有点复杂),您也可以简单地创建一个空列表,并向其追加项目:
def SubDL(self, SubUrl):
subList = []
self.AllSubs = urllib.urlopen(SubUrl).readlines()
for item in self.AllSubs:
if self.SearchCriteria[0] and self.SearchCriteria[1] in item:
subList.append(item)
return subList