python如何爬取电影并下载
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章给大家分享的是有关python如何爬取电影并下载的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、概述对于一个宅男,喜欢看电影,每次打开电影网站,各种弹出的广告,很
千家信息网最后更新 2025年02月04日python如何爬取电影并下载
这篇文章给大家分享的是有关python如何爬取电影并下载的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
一、概述
对于一个宅男,喜欢看电影,每次打开电影网站,各种弹出的广告,很是麻烦,还是要自己去复制下载链接到迅雷上粘贴并下载,这个过程中还有选择困难症;这一系列的动作让人甚是不爽,不如有下好的,点着看就好了;作为一个python爱好者,结合对爬虫的一点小了解,于是周末花了点时间用python写了一个爬取某电影网站上的最新电影板块;
思路:
爬虫针对某电影网站,收集电影名,下载链接,评分,等信息;当天更新的电影,特别的打印出来;同时通过评分调用迅雷下载,当然先判断下,是否已经下载过了,再决定是否下载;然后,就是可以看了~
本次版本是基于python3.x下通过,在windows上才能调用迅雷~linux平台只能获取相关信息!
python安装和相关的模块安装这里不讲述,如有不明白请留言我~
jupyter上运行如下:
二、代码
废话不多说上代码吧~
# coding:utf-8# version 20181027 by sanimport re,time,osfrom urllib import requestfrom lxml import etree # python xpath 单独使用导入是这样的import platformimport sslssl._create_default_https_context = ssl._create_unverified_context # 取消全局证书#爬虫电影之类class getMovies: def __init__(self,url,Thuder): ''' 实例初始化 ''' self.url = url self.Thuder = Thuder def getResponse(self,url): url_request = request.Request(self.url) url_response = request.urlopen(url_request) return url_response #返回这个对象 def newMovie(self): ''' 获取最新电影 下载地址与url ''' http_response = self.getResponse(webUrl) #拿到http请求后的上下文对象(HTTPResponse object) data = http_response.read().decode('gbk') #print(data) #获取网页内容 html = etree.HTML(data) newMovies = dict() lists = html.xpath('/html/body/div[1]/div/div[3]/div[2]/div[2]/div[1]/div/div[2]/div[2]/ul/table//a') for k in lists: if "app.html" in k.items()[0][1] or "最新电影下载" in k.text: continue else: movieUrl = webUrl + k.items()[0][1] movieName = k.text.split('《')[1].split("》")[0] newMovies[k.text.split('《')[1].split("》")[0]] = movieUrl = webUrl + k.items()[0][1] return newMovies def Movieurl(self,url): ''' 获取评分和更新时间 ''' url_request = request.Request(url) movie_http_response = request.urlopen(url_request) data = movie_http_response.read().decode('gbk') if len(re.findall(r'豆瓣评分.+?.+users',data)): # 获取评分;没有评分的返回null pingf = re.findall(r'豆瓣评分.+?.+users',data)[0].split('/')[0].replace("\u3000",":") else: pingf = "豆瓣评分:null" desc = re.findall(r'简\s+介.*',data)[0].replace("\u3000","").replace('
',"").split("src")[0].replace('&ldquo',"").replace('&rdquo',"").replace('",v,"\n") else: print("========================================") print(k,"-->",v,"\n")if __name__ == '__main__': # 以下依据您个人电影迅雷的相关信息填写即可 save_path="O:\迅雷下载" # 电影下载保存位置 (需要填写) Thuder = "O:\Program\Thunder.exe" #Thuder: 迅雷Thuder.exe路径 (需要填写) webUrl = 'http://www.dytt8.net' # 电影网站 test = getMovies(webUrl,Thuder) # 实例化 test.NewMoives() Movies = test.Main() for k,v in Movies.items(): movies_name = v[0][0].split('/')[3] socre = v[0][2].split(":")[1] check_down_status = test.check_end(movies_name,save_path)# print(check_down_status) if check_down_status: print("电影: %s 已经下载" %movies_name) continue elif socre == 'null': continue elif float(socre) > 7.0: print(movies_name,socre) test.DownMovies(k,v[0][0]) time.sleep(10)
注意:以上代码是针对windows平台下,迅雷版本为非极速版本,本次使用的是9.14 如图:
另外需要勾选以下配置项,否则程序调用迅雷下载时会有提示框:
程序运行效果如图:
再看下O盘 下载的目录:
至此自动获取最新电影并下载指定评分电影完成~ 再也不用担心选择困难了,下好看就行了~
感谢各位的阅读!关于"python如何爬取电影并下载"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
电影
评分
迅雷
信息
内容
最新电影
爬虫
版本
电影网站
网站
豆瓣
困难
代码
实例
对象
平台
时间
更多
电影下载
程序
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
衡水君诚软件开发有限公司
怎么登陆企业服务器
高中网络安全教育黑板报
饥荒联机搭建服务器怎么关闭
学计算机网络技术的原因
云帮手管理服务器
便宜双线服务器租用
车载dvr录像管理软件开发
团委网络安全法宣传情况
大学sql数据库教材
福州零信任网络安全践行者
熊猫数据库
华为网络安全指数
网络安全法有啥亮点
互联网医疗it科技
二手服务器安全吗
航天金税软件开发工程师
南京网络技术公司注册
vivo软件开发工程师
数据库怎么重复复制
软件开发人员派遣价格
上海家用软件开发成本价
数据库的三个存储引擎
服务器设置网络以后ping不通
大学数据库是什么课
地名数据库工作情况汇报
云南省网络安全规划
嵌入式软件开发商排名榜
大理计算机网络技术专业报名
九个盒子网络技术有限公司