CN101645815B - 音视频文件下载提示方法 - Google Patents
音视频文件下载提示方法 Download PDFInfo
- Publication number
- CN101645815B CN101645815B CN 200810117879 CN200810117879A CN101645815B CN 101645815 B CN101645815 B CN 101645815B CN 200810117879 CN200810117879 CN 200810117879 CN 200810117879 A CN200810117879 A CN 200810117879A CN 101645815 B CN101645815 B CN 101645815B
- Authority
- CN
- China
- Prior art keywords
- file
- information
- audio
- video
- interface function
- 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.)
- Active
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本发明提供一种音视频文件下载提示方法。该方法包括在互联网浏览器进程中,拦截文件打开接口函数获得所要访问的文件的链接地址和文件的句柄信息,以及链接地址和句柄信息的对应关系信息;若根据链接地址判断出文件的文件类型是音视频文件类型,则根据链接地址生成文件下载提示信息;若不能根据链接地址判断出文件的文件类型是音视频文件类型,则再根据通过拦截文件读取接口函数而获得的文件内容信息判断文件的文件类型,若文件的文件类型是音视频文件类型,则根据对应关系信息查找与通过拦截文件读取接口函数而获得的句柄信息对应的链接地址,并根据查找到的链接地址生成文件下载提示信息。本发明能够提供音视频文件的下载地址,实现直接下载。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种音视频文件下载提示方法。
背景技术
随着互联网技术的不断发展,基于互联网的多媒体资源也日益丰富。现有音视频网站均提供有音视频信息在线播放功能,但是一部分音视频网站并不提供关于音视频文件的明确的下载地址,而且针对这类音视频文件的下载地址做了较为严格的下载限制和加密处理,使用户无法快速地直接下载所需音视频文件,而只能选择在线观看。
现有技术中实现网站音视频文件下载的方法是通过通过网络驱动在网卡上抓包获取网络传输数据包进行数据分析,监控和分析HTTP请求包,需要先识别“tcp”数据包,然后识别“http”请求,最后识别目标网站,获得音视频文件的下载地址。现有技术实现音视频文件下载的方法中,获得音视频文件的下载地址时操作或实现均比较复杂,因此造成下载过程较为繁琐,降低用户的网络性能;而且还可能会因下载地址被加密等原因无法准确获得下载地址,出现无法下载所需文件的情况,影响服务质量。
发明内容
本发明提供一种音视频文件下载提示方法,用以解决现有技术中因下载地址获取困难而无法直接下载所需文件的缺陷,实现为用户提供下载地址进行音视频文件下载。
本发明提供一种音视频文件下载提示方法,包括:
在互联网浏览器进程中,拦截文件打开接口函数获得所要访问的文件的链接地址和所述文件的句柄信息,以及所述链接地址和句柄信息的对应关系信息;
若根据所述链接地址判断出所述文件的文件类型是音视频文件类型,则根据所述链接地址生成文件下载提示信息;
若不能根据所述链接地址判断出所述文件的文件类型是音视频文件类型,则再根据通过拦截文件读取接口函数而获得的文件内容信息判断所述文件的文件类型,若所述文件的文件类型是音视频文件类型,则根据所述对应关系信息查找与通过拦截所述文件读取接口函数而获得的句柄信息对应的链接地址,并根据查找到的链接地址生成文件下载提示信息。
本发明提供的音视频文件下载提示方法,在互联网浏览器进程中,通过拦截文件打开接口函数和文件读取接口函数,获得所要访问的音视频文件的链接地址,并生成用于提示用户直接下载该文件的下载提示信息,并不影响IE调用API函数的进行信息展现的正常实现。对于用户而言,在打开一个网页后,若该网页上存在在线播放的音视频文件,可以根据互联网浏览器菜单上的文件下载提示信息对感兴趣的文件进行下载,避免了用户想要下载音视频文件而无法方便的获得下载链接地址的缺陷,提高了服务质量;而且对下载链接地址信息的获取和生成文件下载提示信息均在后台进行,并不影响用户浏览网页资源信息的正常流程。
附图说明
图1为本发明音视频文件下载提示方法流程图;
图2为本发明音视频文件下载提示方法中获取链接地址流程图。
具体实施方式
下面结合附图和具体实施例进一步说明本发明实施例的技术方案。
图1为本发明音视频文件下载提示方法流程图,如图1所示,该方法包括如下步骤:
步骤100,在互联网浏览器进程中,拦截文件打开接口函数获得所要访问的文件的链接地址和所述文件的句柄信息,以及所述链接地址和句柄信息的对应关系信息;
互联网浏览器例如微软IE(Internet Explorer)浏览器在启动时,当组成网页的资源信息中存在能够在线播放的音视频信息时,IE首先需要调用“http”请求文件打开函数创建句柄信息。IE在向文件打开接口函数发送调用请求时要将所要访问的文件的链接地址(URL地址)发送给文件打开接口函数作为输入参数,其中所述的文件打开接口函数为一种应用编程接口(ApplicationProgramming Interface;简称:API)函数,可以根据接收到的链接地址返回调用结果即生成对应的句柄作为结果返回。本发明提供的方法就是在此基础上,通过在在互联网浏览器进程中,拦截文件打开接口函数,获得IE所要访问的文件的链接地址和所述文件的句柄信息,并建立所述链接地址和所述文件的句柄信息的对应关系信息。本发明实施例可以采用API拦截(hook)技术实现,在IE启动的时候通过“bho”(Browser Helper Object)接口将动态库加载到IE进程空间中,通过“API hook”技术接管“winInet”的几个函数包括文件打开接口函数例如“httpOpenRequest”或“InternetOpenUrl”,文件读取接口函数“InternetReadFile”或“InternetReadFileEx”。IE浏览器在每次进行文件下载的时候,会调用这几个函数,接管API的意义在于IE调用这几个API函数时,会跳至我们预先设定的对应的处理函数,并由我们的对应处理函数来调用对应的真实的API。本发明实施例提供的方法中“API hook”技术可以具体选用“detour”技术来实施对API函数的拦截和接管。本实施例方法中可以在开启互联网浏览器后访问网络资源时触发进行拦截API函数的操作,从而获得所需信息。
本发明方法中为了获取IE访问的文件的URL地址,通过拦截文件打开接口函数,从中获取所需要的URL地址,实现步骤包括如图2所示:
步骤1001,在互联网浏览器进程中,拦截所述文件打开接口函数,获得所要访问的文件的链接地址;
步骤1002,向所述文件打开接口函数转发所述链接地址,并获得所述文件打开接口函数根据所述链接地址生成的句柄信息;
步骤1003,建立所述链接地址与所述句柄信息之间的对应关系。
具体地,IE调用例如“httpOpenRequest”的文件打开接口函数时,要向“httpOpenRequest”函数发送请求消息,将所要访问的文件的地址发送给“httpOpenRequest”函数作为输入参数,本实施例通过“API hook”技术拦截请求消息,并从中获取所需要的URL地址信息,再将获取的URL地址信息作为参数,调用***真实的“httpOpenRequest”函数。“httpOpenRequest”函数对包括URL地址信息的请求消息进行响应,生成句柄信息,并将句柄信息返回;获取到句柄信息后,将句柄信息再转发给IE;通过对IE调用文件打开接口函数的拦截,获得IE所要访问的URL地址和句柄信息后,建立二者的对应关系。
步骤101,根据所述链接地址判断所要访问的文件的文件类型是否是音视频文件类型,若是则执行步骤102;若不是,则执行步骤103;
由于存在可以根据链接地址信息直接判断出文件的类型,因此在拦截文件打开接口函数获得所要访问的文件的链接地址信息后,可以首先根据该链接地址信息对所要访问的文件的类型进行判断,根据判断结果作不同的处理。
步骤102,根据所述链接地址生成文件下载提示信息;
若根据所述链接地址判断得知所要访问的文件为音视频类型文件,则根据所述链接地址生成所述文件下载提示信息,例如下载“xxx.flv”就可以判断出该文件为视频文件,则可以直接生成下载提示信息,该下载提示信息是根据URL地址生成的,提示信息可以是在IE上出现一个对应的菜单选项等,用户点击该菜单时便可以直接下载文件到本地硬盘上了。当能够直接根据链接地址判断出文件的文件类型时,后续虽然也要进行拦截文件读取接口函数的操作,但可以不做特殊处理,而按照正常文件下载流程下载网页资源上的音视频文件即可。这样,互联网浏览器在完成下载音视频文件资源信息,并在互联网浏览器中播放文件类型是音视频文件类型的文件的同时,也相应地给出了下载该文件的提示信息,供用户选择下载。
步骤103,根据通过拦截文件读取接口函数而获得的文件内容信息判断所述文件的文件类型,若是音视频文件类型,则执行步骤104;若不是音视频文件类型,则执行步骤105;
若不能根据所述链接地址判断出所述文件的文件类型是音视频文件类型,则在拦截文件读取接口函数时可以获得所要访问的文件的文件内容信息,并根据该文件内容信息再对文件的类型作出判断,并作相应处理。
步骤104,根据所述对应关系信息查找与通过拦截所述文件读取接口函数而获得的句柄信息对应的链接地址,并根据查找到的链接地址生成文件下载提示信息;
互联网浏览器在完成调用文件打开接口函数,接收到文件打开接口函数根据链接地址生成的句柄信息后,要根据得到的句柄信息调用文件读取接口函数完成文件数据的下载。IE向文件打开接口函数例如“InternetReadFile”函数发送请求消息,其中携带有所要访问文件对应的句柄信息,请求通过该API函数获取到文件内容。本实施例中通过在互联网浏览器进程中,拦截文件打开接口函数例如“InternetReadFile”函数,获得句柄信息和文件内容信息,在之前根据文件的链接地址信息不能做出文件是音视频类型文件的判断情况下,首先判断是否有所述通过拦截所述文件读取接口函数而获得的句柄信息的记录,若有,则可以再根据文件内容信息对文件类型作出判断,具体可以是根据读取的文件内容数据格式为已知的某种音视频文件数据格式进行判断,得到文件是音视频类型文件的判断结果后,在之前建立的链接地址和句柄信息之间的对应关系信息中,查找文件类型为音视频文件类型的文件的句柄信息所对应的链接地址,并根据查找到的链接地址生成文件下载提示信息。在生成文件下载提示信息的同时还要将句柄信息发送给文件读取接口函数例如“InternetReadFile”函数,“InternetReadFile”函数根据句柄信息完成正常的文件数据读取操作,实现在IE上的在线播放。这样,互联网浏览器在完成下载音视频文件资源信息,并在互联网浏览器中播放文件类型是音视频文件类型的文件的同时,也相应地给出了下载该文件的提示信息,供用户选择下载。
如果在之前建立的链接地址和句柄信息之间的对应关系信息中没有记录该句柄信息对应的链接地址,或之前就没有关于该句柄信息的任何记录,则直接调用真实的“http”数据读取函数,并将函数返回结果返回给IE,而不做其他的处理。
步骤105,音视频文件下载提示处理流程结束。
若IE打开的网页资源中没有音视频文件,则按照正常的网络资源打开处理流程执行网页信息展现操作,当然也不必生成文件下载提示信息。
本发明提供的音视频文件下载提示方法,在互联网浏览器进程中,通过拦截文件打开接口函数和文件读取接口函数,获得所要访问的音视频文件的链接地址,并生成用于提示用户直接下载该文件的下载提示信息,并不影响IE调用API函数的进行信息展现的正常实现。对于用户而言,在打开一个网页后,若该网页上存在在线播放的音视频文件,可以根据互联网浏览器菜单上的文件下载提示信息对感兴趣的文件进行下载,避免了用户想要下载音视频文件而无法方便的获得下载链接地址的缺陷,提高了服务质量;而且对下载链接地址信息的获取和生成下载提示信息均在后台进行,并不影响用户浏览网页资源信息的正常流程。本发明方法中拦截的是当前IE浏览器的“http”访问请求,而且是针对发出请求的数据包,相对于现有的无目的的在网络上抓包,本方法的信息抓取更具有定向性,效率更高。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (4)
1.一种音视频文件下载提示方法,其特征在于,包括:
在互联网浏览器进程中,拦截文件打开接口函数获得所要访问的文件的链接地址,向所述文件打开接口函数转发所述链接地址并获得所述文件打开接口函数根据所述链接地址生成的句柄信息,建立所述链接地址与所述句柄信息之间的对应关系;
若根据所述链接地址判断出所述文件的文件类型是音视频文件类型,则根据所述链接地址生成文件下载提示信息;
若不能根据所述链接地址判断出所述文件的文件类型是音视频文件类型,则再根据通过拦截文件读取接口函数而获得的文件内容信息判断所述文件的文件类型,若所述文件的文件类型是音视频文件类型,则根据所述对应关系信息查找与通过拦截所述文件读取接口函数而获得的句柄信息对应的链接地址,并根据查找到的链接地址生成文件下载提示信息。
2.根据权利要求1所述的音视频文件下载提示方法,其特征在于,还包括向所述互联网浏览器返回所述文件打开接口函数根据所述链接地址生成的句柄信息。
3.根据权利要求1所述的音视频文件下载提示方法,其特征在于根据通过拦截文件读取接口函数而获得的文件内容信息判断所述文件的文件类型之前包括:通过判断得知有通过拦截所述文件读取接口函数而获得的所述句柄信息的记录。
4.根据权利要求1所述的音视频文件下载提示方法,其特征在于还包括:在所述互联网浏览器中播放文件类型是音视频文件类型的文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810117879 CN101645815B (zh) | 2008-08-06 | 2008-08-06 | 音视频文件下载提示方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200810117879 CN101645815B (zh) | 2008-08-06 | 2008-08-06 | 音视频文件下载提示方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101645815A CN101645815A (zh) | 2010-02-10 |
CN101645815B true CN101645815B (zh) | 2013-05-08 |
Family
ID=41657540
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200810117879 Active CN101645815B (zh) | 2008-08-06 | 2008-08-06 | 音视频文件下载提示方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101645815B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169486A (zh) * | 2010-02-25 | 2011-08-31 | 腾讯科技(深圳)有限公司 | 一种文件下载方法及装置 |
CN102360349B (zh) * | 2011-07-21 | 2014-12-03 | 深圳万兴信息科技股份有限公司 | 一种获取网页中音/视频链接地址的方法及装置 |
CN102306077A (zh) * | 2011-08-04 | 2012-01-04 | 深圳市万兴软件有限公司 | 一种在mac平台浏览器中实现视频下载的方法及浏览器 |
CN103577427A (zh) * | 2012-07-25 | 2014-02-12 | ***通信集团公司 | 基于浏览器内核的网页爬取方法、装置及包含该装置的浏览器 |
CN104581401B (zh) * | 2013-10-10 | 2019-02-01 | 腾讯科技(深圳)有限公司 | 数据播放的方法及装置 |
CN104796785A (zh) * | 2015-03-31 | 2015-07-22 | 北京奇虎科技有限公司 | 应用程序内的视频播放方法及装置 |
CN107102937B (zh) * | 2016-02-19 | 2021-03-02 | 腾讯科技(深圳)有限公司 | 一种用户界面测试方法和装置 |
CN107256276A (zh) * | 2017-08-01 | 2017-10-17 | 北京合天智汇信息技术有限公司 | 一种基于云平台的移动App内容安全获取方法及设备 |
CN108829708A (zh) * | 2018-05-02 | 2018-11-16 | 广州金山安全管理***技术有限公司 | 文件安全判断方法及装置 |
CN111212418A (zh) * | 2019-12-31 | 2020-05-29 | 北京指掌易科技有限公司 | 移动端应用安全下载装置和方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713573A (zh) * | 2004-06-22 | 2005-12-28 | 腾讯科技(深圳)有限公司 | 一种网页插件选择下载的实现方法及其装置 |
CN101158978A (zh) * | 2007-11-14 | 2008-04-09 | 深圳市迅雷网络技术有限公司 | 一种访问网络资源的方法、***及装置 |
-
2008
- 2008-08-06 CN CN 200810117879 patent/CN101645815B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1713573A (zh) * | 2004-06-22 | 2005-12-28 | 腾讯科技(深圳)有限公司 | 一种网页插件选择下载的实现方法及其装置 |
CN101158978A (zh) * | 2007-11-14 | 2008-04-09 | 深圳市迅雷网络技术有限公司 | 一种访问网络资源的方法、***及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101645815A (zh) | 2010-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101645815B (zh) | 音视频文件下载提示方法 | |
JP6999657B2 (ja) | 情報プッシュ方法及び情報プッシュ装置 | |
JP5160410B2 (ja) | 電子装置からのデータに基づいてコンテンツを取得するためのシステム及び方法 | |
US20120275764A1 (en) | Creation of video bookmarks via scripted interactivity in advanced digital television | |
US7987243B2 (en) | Method for media discovery | |
CN111246302B (zh) | 浏览器下载数据的方法、装置和终端 | |
CN102110124A (zh) | 一种rss订阅的方法、装置和*** | |
CN112532490A (zh) | 回归测试***、方法和电子设备 | |
US20170187837A1 (en) | Ad download method, the client and the server | |
CN105611422A (zh) | 基于多媒体榜单的在线直播方法及装置 | |
CN106331876A (zh) | 网页视频播放方法及装置 | |
JP4976097B2 (ja) | UPnPによらない個体をUPnPデバイスまたはコンテンツで表現する方法及び装置 | |
CN104615432A (zh) | 闪屏信息处理方法及客户端 | |
CN113360413A (zh) | 一种代码测试方法及装置 | |
US8478822B2 (en) | Device and method of sharing contents based on time synchronization | |
CN108241748B (zh) | 获取直播音乐名称的方法、装置、介质及设备 | |
CN108564971B (zh) | 音频播放方法及装置 | |
CN105897852A (zh) | 广告下载方法、客户端和服务器 | |
CN108650544B (zh) | 一种媒体播放方法、装置以及媒体播放*** | |
CN107222559B (zh) | 信息调用方法 | |
CN111625508A (zh) | 一种信息处理方法及装置 | |
CN111782291A (zh) | 一种测试页面的启动方法和装置 | |
KR20090114637A (ko) | 지능형 컨텐츠의 재생 시스템 및 지능형 컨텐츠의 재생방법과, 컨텐츠실행프로그램을 기록한 기록매체 | |
CN104901945A (zh) | 一种终端 | |
FR2929480A1 (fr) | Procede de determination de donnees complementaires relatives a au moins un contenu, procede pour transmettre ces donnees complementaires, dispositif de traitement et serveur d'applications associes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |