CN108664646B - 一种基于关键字的音视频自动下载系统 - Google Patents
一种基于关键字的音视频自动下载系统 Download PDFInfo
- Publication number
- CN108664646B CN108664646B CN201810468220.5A CN201810468220A CN108664646B CN 108664646 B CN108664646 B CN 108664646B CN 201810468220 A CN201810468220 A CN 201810468220A CN 108664646 B CN108664646 B CN 108664646B
- Authority
- CN
- China
- Prior art keywords
- audio
- video
- downloading
- module
- task
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 18
- 238000012544 monitoring process Methods 0.000 claims abstract description 7
- 241000239290 Araneae Species 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 18
- 238000005065 mining Methods 0.000 claims description 9
- 238000007711 solidification Methods 0.000 claims description 8
- 230000008023 solidification Effects 0.000 claims description 8
- 230000009193 crawling Effects 0.000 claims description 6
- 230000015271 coagulation Effects 0.000 claims description 3
- 238000005345 coagulation Methods 0.000 claims description 3
- 238000012216 screening Methods 0.000 claims description 3
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 238000013481 data capture Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 241000167854 Bourreria succulenta Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 235000019693 cherries Nutrition 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- APTZNLHMIGJTEW-UHFFFAOYSA-N pyraflufen-ethyl Chemical compound C1=C(Cl)C(OCC(=O)OCC)=CC(C=2C(=C(OC(F)F)N(C)N=2)Cl)=C1F APTZNLHMIGJTEW-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/45—Network directories; Name-to-address mapping
- H04L61/4505—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
- H04L61/4511—Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/46—Interconnection of networks
- H04L12/4641—Virtual LANs, VLANs, e.g. virtual private networks [VPN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/044—Network management architectures or arrangements comprising hierarchical management structures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种基于关键字的音视频自动下载系统,包括应用层、服务层和数据层;所述的应用层包括系统任务配置模块、系统任务下发模块、系统任务监测模块以及结果统计模块;所述服务层包括音视频关键字搜索模块、音视频链接自动解析模块、音视频资源自动下载模块和相关音视频发现模块;所述数据层包括爬虫任务数据库、系统配置数据库、音视频文件系统库和关键字数据库。本发明利用多台计算机设备搭建集群,采用分布式及负载均衡策略,能够基于用户提供的关键字在互联网上爬取并下载相关的音视频。
Description
技术领域
本发明涉及音视频下载领域,尤其涉及一种基于关键字的音视频自动下载系统。
背景技术
近年来,随着互联网技术的快速发展以及网络宽带的不断增加,对音视频的获取已成为大众生活中必不可少的休闲方式。与此同时,对音视频的搜索、解析和下载技术的要求也日益增加。
当用户需要下载某些关键字的音视频时,他们需要依次在优酷、爱奇艺、搜狐视频等视频网站搜索,然后进行下载操作。然而,当用户想要在这些音视频网站上执行音视频下载任务时,往往都需要事先安装相应音视频网站的客户端软件,且安装过多的客户端软件会为用户生活诸多不便。因此,用户希望有一种方法在不安装客户端软件的情况下高效下载不同音视频网站的音视频。最为传统方法是通过下载软件进行下载,如迅雷、快车、FreeDownload Manager等,这些下载软件需要用户手动获取音视频的下载链接。然而,许多音视频网站不会将这些音视频的下载链接显式地提供给用户,给音视频自动下载带来了困难。此外,这些传统的下载软件并不能为用户提供关键字搜索功能。
一些互联网音视频下载系统将下载链接提取和音视频下载结合起来,允许用提交音视频所在的URL以下载音视频,例如硕鼠、维棠等软件。然而,非专业用户难以根据自己的关键字在浩如烟海的互联网资源中迅速且准确地找到音视频资源的URL,且这些不够智能化软件往往难以满足用户的关键字需求。
发明内容
为了解决上述问题,本发明提出一种基于关键字的音视频自动下载系统。
具体的,本发明的目的通过以下技术方案来实现:一种基于关键字的音视频自动下载系统,包括应用层、服务层和数据层;
所述应用层包括:
系统任务配置模块,用于用户填写音视频的关键字信息或音视频链接,以及指定音视频下载的目标网站;
系统任务下发模块,用于将用户配置的任务信息提交给服务层,以供服务层进行音视频搜索、爬取和下载等操作;
系统任务监测模块,用于监测系统任务下发模块下发任务的状态信息,并允许用户对任务进行查询操作;
结果统计模块,用于对已完成的任务进行状态统计,对已下载的音视频的关键字信息进行统计操作;
所述服务层包括:
音视频关键字搜索模块,用于根据用户给出的关键词在指定网站抓取音视频数据;
音视频链接自动解析模块,用于根据音视频关键字搜索模块获取的音视频链接或用户提交的音视频链接解析出音视频的源地址;
音视频资源自动下载模块,用于根据解析出的音视频源地址对其进行下载操作;
相关音视频发现模块,用于对关键字信息出现的频率进行统计,并挖掘音视频网站中出现且与用户提交的关键字信息相关的新词,辅助用户下载与其提交的关键字信息相关的音视频;
所述数据层包括:
爬虫任务数据库,用于存储所述音视频关键字搜索模块抓取的音视频数据;
系统配置数据库,用于存储所述音视频链接自动解析模块解析的音视频源地址信息;
音视频文件系统库,用于存储所述音视频资源自动下载模块的任务执行日志文件和下载的音视频文件;
关键字数据库,用于存储用户输入的关键字信息及所述相关音视频发现模块挖掘的新词。
进一步地,所述音视频关键字搜索模块运用Scrapy爬虫框架,包括:
Scrapy Engine,用于控制整个系统的数据处理流程,并进行事务处理的触发;
Scheduler,用于接受从Scrapy Engine发送的请求,并排序列入队列,在ScrapyEngine再次发出请求时返还给Scrapy Engine;
Spiders,用于用户自定义用来解析网页并抓取制定URL返回的内容的类,每个Spiders都能处理一个域名或一组域名;
Downloader,用于抓取网页并将网页内容并返还给Spiders;
Item Pipeline,用于负责处理Spiders从网页中抽取的内容,存储内容、验证内容的有效性和清除不需要的信息;
Downloader Middleware,是位于Scrapy Engine和Downloader之间的钩子框架,用于处理Scrapy Engine与Downloader之间的请求及响应;
Spider Middleware,是介于Scrapy Engine和Spiders之间的钩子框架,用于处理Spiders的响应输入和请求输出;
Scheduler Middleware,是介于Scrapy Engine和Scheduler之间的中间件,用于处理从Scrapy Engine发送到Scheduler的请求和响应;
Redis,为一个支持网络的日志型数据库,用于存储来自Item Pipeline的项目。
进一步地,所述的音视频关键字搜索模块采用特定的爬取策略:一台服务器作为Master,其余多台服务器作为Slaver,多个Slaver从Master获取任务,所述任务为Request、URL或ID,然后从网络上进行数据抓取;所述Slaver在数据抓取过程中能够获得数据的点击量信息,并将其存储至爬虫任务数据库中,同时会生成新任务,并将新任务回抛给Master;所述Master将其存入Redis数据库,可用于将Slaver提交的任务去重,并将这些任务加入待爬队列,Scrapy自身的队列机制使得Slaver获取的链接不会相互冲突。
进一步地,所述音视频链接自动解析模块包括国外音视频解析和国内音视频解析,所述国外音视频解析包括带VPN的解析器AutoDL和用于模拟点击的ChromeJS,所述国内音视频解析包括不带VPN的解析器AutoDL和用于模拟点击的ChromeJS;所述音视频链接自动解析模块的任务解析步骤包括:
(1)解析任务默认通过不带VPN的解析器AutoDL解析;
(2)解析过程发现任务需要VPN,将任务发往带VPN的解析器AutoDL解析;
(3)若带VPN的解析器AutoDL或不带VPN解析器AutoDL有该任务的解析库,则直接开始解析;
(4)若带VPN的解析器AutoDL或不带VPN解析器AutoDL没有该任务的解析库,则均会通过各自的ChromeJS插件进行模拟点击,来获取音视频源地址。
进一步地,所述的音视频资源自动下载模块包括VPN下载模块和无VPN下载模块,所述VPN下载模块和无VPN下载模块均包括下载工具集合和DownloaderCtl下载器,所述下载工具集合包含常用的下载软件;所述音视频资源自动下载模块的任务下载步骤包括:
(1)音视频资源自动下载模块从含有音视频源地址的系统配置数据库中不断读取下载任务,并按照任务ID取模机器数分配机器号;
(2)下载机收到下载任务后先进行机器号的比对,若相同,则音视频资源自动下载模块将下载任务按照是否需要VPN的下载任务分别交给VPN下载模块和无VPN下载模块以执行下载任务;例如,对于下载机1而言,它比对自己的机器号和下载任务的机器号,只有相同才执行下载;若不同,下载机则将该任务ID通知音视频资源自动下载模块,以供其重新分配下载该任务的机器号;
(3)将下载的内容存储于音视频文件系统库,以供用户查阅。
进一步地,对于VPN下载模块和无VPN下载模块而言,非磁力链接的下载任务通过DownloaderCtl下载器下载,磁力链接任务通过下载工具集合中的下载软件进行下载。
进一步地,所述相关音视频发现模块包括:
词频分析模块,用于从音视频网站的关键字按出现频数进行排序,并提取满足要求的候选词;
新词发现模块,用于挖掘视频网站关键词中出现的新词,通过计算候选词的热度得分来判断其是否是新词。
进一步地,所述词频分析模块提取满足要求的候选词的步骤包括:
(1)把关键词中出现过的长度不超过d的子串都作为候选词,所述d为自己设定的候选词长度上限;
(2)为候选词出现的频数、凝固程度和自由程度各设定一个阈值;所述凝固程度指组成一个候选词的各个字共同出现在文本中的概率,例如,“手表”这个文本片段出现的概率P(手表)远大于“手”这个文本片段出现的概率P(手)和“表”这个文本片段出现的概率P(表)之积的话,则可认为“手表”的凝固程度很高,更易成词。所述自由程度指候选词跟其他字所组合成的词语在文本中出现的频率;比如“作业”可以跟其他字组合成“做作业”, “抄作业”,“写作业”,“交作业”等,则可认为“作业”这个候选词的自由度很高,更易成词;
(3)依次根据所设定的频数、凝固程度和自由程度的阈值进行筛选,提取出所有满足阈值要求的候选词。
进一步地,所述新词发现模块挖掘新词的步骤包括:
(1)选择七天作为一个时间段,分别计算t1和t2两个时间段内候选词出现的频率;
(2)分别在t1和t2两个时间段内候选词出现的频率加上全局平均分得到t1和t2两个时间段候选词的热度得分;所述全局平局分为音视频网站中所有关键字在音视频网站中出现频率的平均值;
(3)计算t1和t2两个时间段候选词的热度得分的差值,若差值达到用户设定的阈值,则将该候选词认定为新词。
本发明的有益效果在于:利用多台计算机设备搭建集群,采用分布式及负载均衡策略,能够基于用户提供的关键字在互联网上爬取并下载相关的音视频,对视频网站的关键词进行词频分析、新词发现展示热度关键词,为用户提供方便友好的搜索功能。
附图说明
图1是本发明的整体结构框图;
图2是本发明中音视频关键字搜索模块中的爬虫架构;
图3是本发明中音视频关键字搜索模块中的爬虫策略;
图4是本发明中音视频链接自动解析模块中的任务解析步骤;
图5是本发明中音视频资源自动下载模块的任务下载步骤;
图6是本发明中相关音视频发现模块中的词频分析流程;
图7是本发明中相关音视频发现模块中的新词发现流程。
具体实施方式
为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
如图1所示,一种基于关键字的音视频自动下载系统,包括应用层、服务层和数据层;
所述应用层包括:
系统任务配置模块,用于用户填写音视频的关键字信息或音视频链接,以及指定音视频下载的目标网站;
系统任务下发模块,用于将用户配置的任务信息提交给服务层,以供服务层进行音视频搜索、爬取和下载等操作;
系统任务监测模块,用于监测系统任务下发模块下发任务的状态信息,并允许用户对任务进行查询操作;
结果统计模块,用于对已完成的任务进行状态统计,对已下载的音视频的关键字信息进行统计操作;
所述服务层包括:
音视频关键字搜索模块,用于根据用户给出的关键词在指定网站抓取音视频数据;
音视频链接自动解析模块,用于根据音视频关键字搜索模块获取的音视频链接或用户提交的音视频链接解析出音视频的源地址;
音视频资源自动下载模块,用于根据解析出的音视频源地址对其进行下载操作;
相关音视频发现模块,用于对关键字信息出现的频率进行统计,并挖掘音视频网站中出现且与用户提交的关键字信息相关的新词,辅助用户下载与其提交的关键字信息相关的音视频;
所述数据层包括:
爬虫任务数据库,用于存储所述音视频关键字搜索模块抓取的音视频数据;
系统配置数据库,用于存储所述音视频链接自动解析模块解析的音视频源地址信息;
音视频文件系统库,用于存储所述音视频资源自动下载模块的任务执行日志文件和下载的音视频文件;
关键字数据库,用于存储用户输入的关键字信息及所述相关音视频发现模块挖掘的新词。
进一步地,如图2所示,所述音视频关键字搜索模块运用Scrapy爬虫框架,包括:
Scrapy Engine,用于控制整个系统的数据处理流程,并进行事务处理的触发;
Scheduler,用于接受从Scrapy Engine发送的请求,并排序列入队列,在ScrapyEngine再次发出请求时返还给Scrapy Engine;
Spiders,用于用户自定义用来解析网页并抓取制定URL返回的内容的类,每个Spiders都能处理一个域名或一组域名;
Downloader,用于抓取网页并将网页内容并返还给Spiders;
Item Pipeline,用于负责处理Spiders从网页中抽取的内容,存储内容、验证内容的有效性和清除不需要的信息;
Downloader Middleware,是位于Scrapy Engine和Downloader之间的钩子框架,用于处理Scrapy Engine与Downloader之间的请求及响应;
Spider Middleware,是介于Scrapy Engine和Spiders之间的钩子框架,用于处理Spiders的响应输入和请求输出;
Scheduler Middleware,是介于Scrapy Engine和Scheduler之间的中间件,用于处理从Scrapy Engine发送到Scheduler的请求和响应;
Redis,为一个支持网络的日志型数据库,用于存储来自Item Pipeline的项目。
进一步地,如图3所示,所述的音视频关键字搜索模块采用特定的爬取策略:一台服务器作为Master,其余多台服务器作为Slaver,多个Slaver从Master获取任务,所述任务为Request、URL或ID,然后从网络上进行数据抓取;所述Slaver在数据抓取过程中能够获得数据的点击量信息,并将其存储至爬虫任务数据库中,同时会生成新任务,并将新任务回抛给Master;所述Master将其存入Redis数据库,可用于将Slaver提交的任务去重,并将这些任务加入待爬队列,Scrapy自身的队列机制使得Slaver获取的链接不会相互冲突。
进一步地,如图4所示,所述音视频链接自动解析模块包括国外音视频解析和国内音视频解析,所述国外音视频解析包括带VPN的解析器AutoDL和用于模拟点击的ChromeJS,所述国内音视频解析包括不带VPN的解析器AutoDL和用于模拟点击的ChromeJS;所述音视频链接自动解析模块的任务解析步骤包括:
(1)解析任务默认通过不带VPN的解析器AutoDL解析;
(2)解析过程发现任务需要VPN,将任务发往带VPN的解析器AutoDL解析;
(3)若带VPN的解析器AutoDL或不带VPN解析器AutoDL有该任务的解析库,则直接开始解析;
(4)若带VPN的解析器AutoDL或不带VPN解析器AutoDL没有该任务的解析库,则均会通过各自的ChromeJS插件进行模拟点击,来获取音视频源地址。
进一步地,如图5所示,所述的音视频资源自动下载模块包括VPN下载模块和无VPN下载模块,所述VPN下载模块和无VPN下载模块均包括下载工具集合和DownloaderCtl下载器,所述下载工具集合包含常用的下载软件;所述音视频资源自动下载模块的任务下载步骤包括:
(1)音视频资源自动下载模块从含有音视频源地址的系统配置数据库中不断读取下载任务,并按照任务ID取模机器数分配机器号;
(2)下载机收到下载任务后先进行机器号的比对,若相同,则音视频资源自动下载模块将下载任务按照是否需要VPN的下载任务分别交给VPN下载模块和无VPN下载模块以执行下载任务;例如,对于下载机1而言,它比对自己的机器号和下载任务的机器号,只有相同才执行下载;若不同,下载机则将该任务ID通知音视频资源自动下载模块,以供其重新分配下载该任务的机器号;
(3)将下载的内容存储于音视频文件系统库,以供用户查阅。
进一步地,对于VPN下载模块和无VPN下载模块而言,非磁力链接的下载任务通过DownloaderCtl下载器下载,磁力链接任务通过下载工具集合中的下载软件进行下载。
进一步地,所述相关音视频发现模块包括:
词频分析模块,用于从音视频网站的关键字按出现频数进行排序,并提取满足要求的候选词;
新词发现模块,用于挖掘视频网站关键词中出现的新词,通过计算候选词的热度得分来判断其是否是新词。
进一步地,如图6所示,所述词频分析模块提取满足要求的候选词的步骤包括:
(1)把关键词中出现过的长度不超过d的子串都作为候选词,所述d为自己设定的候选词长度上限;
(2)为候选词出现的频数、凝固程度和自由程度各设定一个阈值;所述凝固程度指组成一个候选词的各个字共同出现在文本中的概率,例如,“手表”这个文本片段出现的概率P(手表)远大于“手”这个文本片段出现的概率P(手)和“表”这个文本片段出现的概率P(表)之积的话,则可认为“手表”的凝固程度很高,更易成词。所述自由程度指候选词跟其他字所组合成的词语在文本中出现的频率;比如“作业”可以跟其他字组合成“做作业”, “抄作业”,“写作业”,“交作业”等,则可认为“作业”这个候选词的自由度很高,更易成词;
(3)依次根据所设定的频数、凝固程度和自由程度的阈值进行筛选,提取出所有满足阈值要求的候选词。
进一步地,如图7所示,所述新词发现模块挖掘新词的步骤包括:
(1)选择七天作为一个时间段,分别计算t1和t2两个时间段内候选词出现的频率;
(2)分别在t1和t2两个时间段内候选词出现的频率加上全局平均分得到t1和t2两个时间段候选词的热度得分;所述全局平局分为音视频网站中所有关键字在音视频网站中出现频率的平均值;
(3)计算t1和t2两个时间段候选词的热度得分的差值,若差值达到用户设定的阈值,则将该候选词认定为新词。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和单元并不一定是本申请所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、ROM、RAM等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。
Claims (7)
1.一种基于关键字的音视频自动下载系统,其特征在于,包括应用层、服务层和数据层;
所述应用层包括:
系统任务配置模块,用于用户填写音视频的关键字信息或音视频链接,以及指定音视频下载的目标网站;
系统任务下发模块,用于将用户配置的任务信息提交给服务层,以供服务层进行音视频搜索、爬取和下载操作;
系统任务监测模块,用于监测系统任务下发模块下发任务的状态信息,并允许用户对任务进行查询操作;
结果统计模块,用于对已完成的任务进行状态统计,对已下载的音视频的关键字信息进行统计操作;
所述服务层包括:
音视频关键字搜索模块,用于根据用户给出的关键词在指定网站抓取音视频数据;
音视频链接自动解析模块,用于根据音视频关键字搜索模块获取的音视频链接或用户提交的音视频链接解析出音视频的源地址;
所述音视频链接自动解析模块包括国外音视频解析和国内音视频解析,所述国外音视频解析包括带VPN的解析器AutoDL和用于模拟点击的ChromeJS,所述国内音视频解析包括不带VPN的解析器AutoDL和用于模拟点击的ChromeJS;所述音视频链接自动解析模块的任务解析步骤包括:
步骤1:解析任务默认通过不带VPN的解析器AutoDL解析;
步骤2:解析过程发现任务需要VPN,将任务发往带VPN的解析器AutoDL解析;
步骤3:若带VPN的解析器AutoDL或不带VPN解析器AutoDL有该任务的解析库,则直接开始解析;
步骤4:若带VPN的解析器AutoDL或不带VPN解析器AutoDL没有该任务的解析库,则均会通过各自的ChromeJS插件进行模拟点击,来获取音视频源地址;
音视频资源自动下载模块,用于根据解析出的音视频源地址对其进行下载操作;
所述的音视频资源自动下载模块包括VPN下载模块和无VPN下载模块,所述VPN下载模块和无VPN下载模块均包括下载工具集合和DownloaderCtl下载器,所述下载工具集合包含常用的下载软件;所述音视频资源自动下载模块的任务下载步骤包括:
步骤1:音视频资源自动下载模块从含有音视频源地址的系统配置数据库中不断读取下载任务,并按照任务ID取模机器数分配机器号;
步骤2:下载机收到下载任务后先进行机器号的比对,若相同,则音视频资源自动下载模块将下载任务按照是否需要VPN的下载任务分别交给VPN下载模块和无VPN下载模块以执行下载任务;
步骤3:将下载的内容存储于音视频文件系统库;
相关音视频发现模块,用于对关键字信息出现的频率进行统计,并挖掘音视频网站中出现且与用户提交的关键字信息相关的新词,辅助用户下载与其提交的关键字信息相关的音视频;
所述数据层包括:
爬虫任务数据库,用于存储所述音视频关键字搜索模块抓取的音视频数据;
系统配置数据库,用于存储所述音视频链接自动解析模块解析的音视频源地址信息;
音视频文件系统库,用于存储所述音视频资源自动下载模块的任务执行日志文件和下载的音视频文件;
关键字数据库,用于存储用户输入的关键字信息及所述相关音视频发现模块挖掘的新词。
2.根据权利要求1所述的基于关键字的音视频自动下载系统,其特征在于,所述音视频关键字搜索模块运用Scrapy爬虫框架,包括:
Scrapy Engine,用于控制整个系统的数据处理流程,并进行事务处理的触发;
Scheduler,用于接受从Scrapy Engine发送的请求,并排序列入队列,在ScrapyEngine再次发出请求时返还给Scrapy Engine;
Spiders,用于用户自定义用来解析网页并抓取制定URL返回的内容的类,每个Spiders都能处理一个域名或一组域名;
Downloader,用于抓取网页并将网页内容并返还给Spiders;
Item Pipeline,用于负责处理Spiders从网页中抽取的内容,存储内容、验证内容的有效性和清除不需要的信息;
Downloader Middleware,是位于Scrapy Engine和Downloader之间的钩子框架,用于处理Scrapy Engine与Downloader之间的请求及响应;
Spider Middleware,是介于Scrapy Engine和Spiders之间的钩子框架,用于处理Spiders的响应输入和请求输出;
Scheduler Middleware,是介于Scrapy Engine和Scheduler之间的中间件,用于处理从Scrapy Engine发送到Scheduler的请求和响应;
Redis,为一个支持网络的日志型数据库,用于存储来自Item Pipeline的项目。
3.根据权利要求2所述的基于关键字的音视频自动下载系统,其特征在于,所述的音视频关键字搜索模块采用特定的爬取策略:多个Slaver从Master获取任务,然后从网络上进行数据抓取;所述Slaver在数据抓取过程中能够获得数据的点击量信息,并将其存储至爬虫任务数据库中,同时会生成新任务,并将新任务回抛给Master;所述Master将其存入Redis数据库,可用于将Slaver提交的任务去重,并将这些任务加入待爬队列。
4.根据权利要求1所述的基于关键字的音视频自动下载系统,其特征在于,对于VPN下载模块和无VPN下载模块而言,非磁力链接的下载任务通过DownloaderCtl下载器下载,磁力链接任务通过下载工具集合中的下载软件进行下载。
5.根据权利要求1所述的基于关键字的音视频自动下载系统,其特征在于,所述相关音视频发现模块包括:
词频分析模块,用于从音视频网站的关键字按出现频数进行排序,并提取满足要求的候选词;
新词发现模块,用于挖掘视频网站关键词中出现的新词,通过计算候选词的热度得分来判断其是否是新词。
6.根据权利要求5所述的基于关键字的音视频自动下载系统,其特征在于,所述词频分析模块提取满足要求的候选词的步骤包括:
(1)把关键词中出现过的长度不超过d的子串都作为候选词,所述d为自己设定的候选词长度上限;
(2)为候选词出现的频数、凝固程度和自由程度各设定一个阈值;所述凝固程度指组成一个候选词的各个字共同出现在文本中的概率,所述自由程度指候选词跟其他字所组合成的词语在文本中出现的频率;
(3)依次根据所设定的频数、凝固程度和自由程度的阈值进行筛选,提取出所有满足阈值要求的候选词。
7.根据权利要求5所述的基于关键字的音视频自动下载系统,其特征在于,所述新词发现模块挖掘新词的步骤包括:
(1)分别计算t1和t2两个时间段内候选词出现的频率;
(2)分别在t1和t2两个时间段内候选词出现的频率加上全局平均分得到t1和t2两个时间段候选词的热度得分;所述全局平均 分为音视频网站中所有关键字在音视频网站中出现频率的平均值;
(3)计算t1和t2两个时间段候选词的热度得分的差值,若差值达到用户设定的阈值,则将该候选词认定为新词。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810468220.5A CN108664646B (zh) | 2018-05-16 | 2018-05-16 | 一种基于关键字的音视频自动下载系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810468220.5A CN108664646B (zh) | 2018-05-16 | 2018-05-16 | 一种基于关键字的音视频自动下载系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108664646A CN108664646A (zh) | 2018-10-16 |
CN108664646B true CN108664646B (zh) | 2021-11-16 |
Family
ID=63779772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810468220.5A Expired - Fee Related CN108664646B (zh) | 2018-05-16 | 2018-05-16 | 一种基于关键字的音视频自动下载系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108664646B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110351183B (zh) * | 2019-06-03 | 2021-06-08 | 创新先进技术有限公司 | 即时通讯中的资源收藏方法以及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778262A (zh) * | 2014-03-06 | 2014-05-07 | 北京林业大学 | 基于叙词表的信息检索方法及装置 |
CN105095381A (zh) * | 2015-06-30 | 2015-11-25 | 北京奇虎科技有限公司 | 新词识别方法和装置 |
CN105574097A (zh) * | 2015-12-11 | 2016-05-11 | 北京奇虎科技有限公司 | 视频下载类搜索结果页的加载方法及装置 |
CN105893622A (zh) * | 2016-04-29 | 2016-08-24 | 深圳市中润四方信息技术有限公司 | 一种聚合搜索方法及聚合搜索系统 |
CN106547738A (zh) * | 2016-11-02 | 2017-03-29 | 北京亿美软通科技有限公司 | 一种基于文本挖掘的金融类逾期短信智能判别方法 |
CN107038229A (zh) * | 2017-04-07 | 2017-08-11 | 云南大学 | 一种基于自然语义分析的用例提取方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8285701B2 (en) * | 2001-08-03 | 2012-10-09 | Comcast Ip Holdings I, Llc | Video and digital multimedia aggregator remote content crawler |
CN100520778C (zh) * | 2006-07-25 | 2009-07-29 | 腾讯科技(深圳)有限公司 | 一种互联网主题文件搜索方法、爬虫系统和搜索引擎 |
CN101853300B (zh) * | 2010-05-26 | 2013-01-30 | 中国科学技术大学 | 一种视频下载服务网站的识别、评估方法及系统 |
US9652538B2 (en) * | 2013-12-11 | 2017-05-16 | Ebay Inc. | Web crawler optimization system |
CN106598991A (zh) * | 2015-10-19 | 2017-04-26 | 上海引跑信息科技有限公司 | 一种使用会话方式实现与网站交互表单自动提取的网络爬虫系统 |
CN106021552A (zh) * | 2016-05-30 | 2016-10-12 | 深圳市华傲数据技术有限公司 | 基于人群行为模拟的互联网爬虫并发数据采集方法及系统 |
CN107066492A (zh) * | 2016-12-29 | 2017-08-18 | 百视通网络电视技术发展有限责任公司 | 媒资元数据采集方法及系统 |
-
2018
- 2018-05-16 CN CN201810468220.5A patent/CN108664646B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103778262A (zh) * | 2014-03-06 | 2014-05-07 | 北京林业大学 | 基于叙词表的信息检索方法及装置 |
CN105095381A (zh) * | 2015-06-30 | 2015-11-25 | 北京奇虎科技有限公司 | 新词识别方法和装置 |
CN105574097A (zh) * | 2015-12-11 | 2016-05-11 | 北京奇虎科技有限公司 | 视频下载类搜索结果页的加载方法及装置 |
CN105893622A (zh) * | 2016-04-29 | 2016-08-24 | 深圳市中润四方信息技术有限公司 | 一种聚合搜索方法及聚合搜索系统 |
CN106547738A (zh) * | 2016-11-02 | 2017-03-29 | 北京亿美软通科技有限公司 | 一种基于文本挖掘的金融类逾期短信智能判别方法 |
CN107038229A (zh) * | 2017-04-07 | 2017-08-11 | 云南大学 | 一种基于自然语义分析的用例提取方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108664646A (zh) | 2018-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11586692B2 (en) | Streaming data processing | |
US11281706B2 (en) | Multi-layer partition allocation for query execution | |
US11416528B2 (en) | Query acceleration data store | |
US11461334B2 (en) | Data conditioning for dataset destination | |
US11232100B2 (en) | Resource allocation for multiple datasets | |
US11163758B2 (en) | External dataset capability compensation | |
CN109408703B (zh) | 信息推荐方法及其系统、装置、电子设备、存储介质 | |
KR100898454B1 (ko) | 통합 검색 서비스 시스템 및 방법 | |
US9465864B2 (en) | Training a search query intent classifier using wiki article titles and a search click log | |
US20180089269A1 (en) | Query processing using query-resource usage and node utilization data | |
US8898132B2 (en) | Method and/or system for searching network content | |
US20180121449A1 (en) | Search results for native applications | |
CN103699669B (zh) | 一种浏览器中进行消息推送的方法和一种浏览器终端 | |
US20130282709A1 (en) | Method and system for query suggestion | |
US20090094210A1 (en) | Intelligently sorted search results | |
US10169005B2 (en) | Consolidating and reusing portal information | |
US20040167876A1 (en) | Method and apparatus for improved web scraping | |
JP6480603B2 (ja) | ウェブ検索結果を用いたネイティブアプリケーション検索結果の提供 | |
KR102054020B1 (ko) | 참조 웹 크롤의 도움에 의한 웹 코퍼스의 구축 | |
US20150242470A1 (en) | Systems and methods for recommending software applications | |
US20160306887A1 (en) | Methods, apparatuses and systems for linked and personalized extended search | |
CN106899879B (zh) | 一种多媒体数据的处理方法和装置 | |
JP6517437B2 (ja) | 自動化された情報取得 | |
US11831417B2 (en) | Threat mapping engine | |
CN108664646B (zh) | 一种基于关键字的音视频自动下载系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211116 |
|
CF01 | Termination of patent right due to non-payment of annual fee |