import urllib.request import re import time fp = open('e:\\douban_film_info.txt', 'w+') fp.write('电影名字\t电影导演\t电影主演\t电影类型\t制片国家/地区\t年份\t电影票房\t上映时间\t电影评分\n') count_url = 0 while count_url < 2: url = 'https://www.douban.com/doulist/1295618/?start=' + str(count_url) req = urllib.request.Request(url, headers={ "User-Agent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"}) html_text = urllib.request.urlopen(req).read().decode('utf-8') #print(html_text) #电影列表 '''
战狼2
''' filmList = re.compile('.*?
.*?(.*?).*?
', re.S).findall(html_text) '''
导演: 吴京
主演: 吴京 / 弗兰克·格里罗 / 吴刚
类型: 动作
制片国家/地区: 中国大陆
年份: 2017
''' filmAbstractList = re.compile(r'
(.*?)
', re.S).findall(html_text) '''
评语:总票房:568323万元 | 上映日期:2017年7月27日(20:00) | 发行类别:国产
''' filmRemarkList = re.compile(r'评语:(.*?)', re.S).findall(html_text) '''
7.2 (475457人评价)
''' scores = re.findall(r'(.*?)', html_text) count = 0 filmIndex = 0 try: print(len(filmAbstractList)) for filmIndex in range(0,len(filmAbstractList)): fp.write(filmList[filmIndex].strip()+'\t')#写入影片名字 abstract=filmAbstractList[filmIndex] print(abstract) # 获取简介的每个Item for item in (abstract.split('
')): fp.write(item.strip().replace(' / ', ',').replace('/', ',').split(': ')[1] + '\t') if count % 5 == 0: pass count += 1 #获取备注(评语) ''' 评语:总票房:568323万元 | 上映日期:2017年7月27日(20:00) | 发行类别:国产 ''' for remark in filmRemarkList[filmIndex].split(' | '): inf = remark.split(':')[1] if inf.find('进口') == -1: if inf.find('国产') == -1: fp.write(inf + '\t') fp.write(scores[filmIndex] + '\t') fp.write('\n') except Exception: pass count_url += 25 time.sleep(2)