抓取豆瓣各类型电影的链接和评论,按评分排列,豆瓣各类型,刚学python,用的是
抓取豆瓣各类型电影的链接和评论,按评分排列,豆瓣各类型,刚学python,用的是
刚学python,用的是python3.3,乱七八糟写的。
import urllib.requestimport reimport timedef movie(movieTag): tagUrl=urllib.request.urlopen(url) tagUrl_read = tagUrl.read().decode('utf-8') return tagUrl_readdef subject(tagUrl_read): ''' 这里还存在问题: ①这只针对单独的一页进行排序,而没有对全部页面的电影进行排序 ②下次更新添加电影链接,考虑添加电影海报 ③需要追加列表 ④导入到本地txt或excel中 ⑤在匹配电影名字时是否可以同时匹配链接与名字、评分、评论组成数组 ⑥ '''#正则表达式匹配电影的名字(链接)、评分与评论 nameURL = re.findall(r'(http://movie.douban.com/subject/[0-9.]+)\\/"\\s+title="(.+)"',tagUrl_read) scoreURL = re.findall(r'<span\\s+class="rating_nums">([0-9.]+)<\\/span>',tagUrl_read) evaluateURL = re.findall(r'<span\\s+class="pl">\\((\\w+)人评价\\)<\\/span>',tagUrl_read) movieLists = list(zip(nameURL,scoreURL,evaluateURL)) newlist.extend(movieLists) return newlist#用quote处理特殊(中文)字符movie_type = urllib.request.quote(input('请输入电影类型(如剧情、喜剧、悬疑):'))page_end=int(input('请输入搜索结束时的页码:'))num_end=page_end*20num=0page_num=1newlist=[]while num<num_end: url=r'http://movie.douban.com/tag/%s?start=%d'%(movie_type,num) movie_url = movie(url) subject_url=subject(movie_url) num=page_num*20 page_num+=1else: #使用sorted函数对列表进行排列,reverse参数为True时升序,默认或False时为降序, key=lambda还不是很明白这里的原理 movieLIST = sorted(newlist, key=lambda movieList : movieList[1],reverse = True) for movie in movieLIST: print(movie)time.sleep(3)print('结束')#该片段来自于http://byrx.net
相关内容
- python生成图片验证码的代码,,#!/usr/bin/e
- 带简单容错机制的python Gopher客户端程序,pythongopher,i
- 获取网页的正文,获取网页正文,有什么办法可以直接获
- Python 的 Twisted 和 ZeroMQ 集成的示例,twistedzeromq,import
- 像fileinput一样使用,处理tarfile文件组,fileinputtarfile,py
- 一只从百度开始不断搜索的小爬虫,百度搜索爬虫,这是
- 不带重复的全排列,不带重复排列,from sys imp
- 简单的猜数字代码,简单猜数字代码,# -*- coding
- 在多玩图片上下载妹子图,玩图片妹子图,# -*- coding
- 带有重复的全排列,带有重复排列,输入开始排列数字和
评论关闭