本發(fā)明涉及電信iptv軟終端技術領域,特別是一種基于爬蟲技術的iptv業(yè)務質量撥測方法。
背景技術:
現有方案采用人工檢測結合平臺維護的方式來完成,其主要技術內容如下:
1、通過人工使用機頂盒進行節(jié)目瀏覽,對epg頁面層級的每個節(jié)目的進行查看和播放,從而完成上線業(yè)務檢測。
2、通過人工分析平臺節(jié)目上傳日志,找出失敗記錄,手工進行重發(fā)。
現有itv內容較常出現以下幾個問題:頁面元素是否缺失、鏈接是否正常、圖片顯示是否正常;內容黑/白屏、重復、缺集漏集、無法播放的錯誤代碼提示等,目前主要是通過人工撥測,存在效率低下和測試準確性難保證的情況。
技術實現要素:
本發(fā)明的目的在于提供一種基于爬蟲技術的iptv業(yè)務質量撥測方法,以克服現有技術中存在的缺陷。
為實現上述目的,本發(fā)明的技術方案是:一種基于爬蟲技術的iptv業(yè)務質量撥測方法,按照如下步驟實現:
步驟s1:掃描待撥測的任務,獲取要撥測epg節(jié)點、業(yè)務類型及地市;
步驟s2:獲取epg節(jié)點對應iptv用戶信息,模擬其機頂盒登陸過程,并獲取對應的會話信息;
步驟s3:判斷待撥測的業(yè)務類型;
步驟s4:根據不同的業(yè)務類型采用不同的測試方案進行測試。
在本發(fā)一實施例中,在所述步驟s4中,還包括如下步驟:
步驟s41:若是直播類或視頻點播類,則根據其besttvcode,獲取對應視頻播放地址,并檢測其是否可播放;
步驟s42:若是增值類業(yè)務,則對其首頁連通性進行測試;
步驟s43:若是看吧類業(yè)務,則根據epg節(jié)目對應的url進行測試。
在本發(fā)一實施例中,在所述步驟s43中,還包括如下步驟:
步驟s431:分析給定的epg節(jié)目入口url,對頁面進行可訪問性檢測;若出錯,則記錄原因,并停止檢測此頁面;
步驟s432:抓取頁面中的圖片,并進行可訪問性檢測,出錯則記錄原因;
步驟s433:通過正則表達式抓取頁面中的節(jié)目url,先重復所述步驟s431至所述步驟s432步驟,然后分析獲取其播放地址,并檢測其是否可播放以及是否缺集;
步驟s434:通過正則表達式抓取頁面中的分類節(jié)目url,重復所述步驟s431至所述步驟s433。
在本發(fā)一實施例中,在所述步驟s433中,還包括如下步驟:
步驟s4331:根據url獲取頁面html內容;
步驟s4332:根據html內容分析出頁面中視頻節(jié)日標題;
步驟s4333:通過正則表達式抓取從html內容分析出視頻節(jié)日播放url;
步驟s4334:訪問視頻節(jié)日播放url,獲取節(jié)目的besttvcode;
步驟s4335:根據節(jié)目的besttvcode獲取其視頻流播放地址;
步驟s4336:根據獲取的視頻流播放地址,利用vlcj播放視頻檢測視頻流是否正常,若不能播放則記錄原因。
在本發(fā)一實施例中,還包括一基于爬蟲技術的iptv業(yè)務質量撥測系統(tǒng),包括:數據層、處理層、應用層以及展示層;所述處理層包括:撥測方案管理模塊、撥測任務管理模塊、撥測結果查詢以及告警管理模塊。
在本發(fā)一實施例中,,通過所述撥測方案管理模塊用于對全省或各地市的不同業(yè)務類型下的所有節(jié)目進行撥測方案的配置;通過所述撥測任務管理模塊,對已提交成功的撥測方案,按其撥測時間在任務隊列中的進度進行查看,對任一撥測方案不同業(yè)務類型的當前撥測節(jié)目完成情況查看,對不同狀態(tài)下的任務進行對應的暫停以及刪除操作;通過所述撥測結果查詢,對各撥測狀態(tài)下的撥測結果信息,包括:各節(jié)目正常以及異常信息,進行查看;通過所述告警管理模塊對錯誤代碼中需要提示的告警事件以及對應的告警級別進行配置。
在本發(fā)一實施例中,在執(zhí)行撥測任務過程中,包括如下任務狀態(tài):進行中狀態(tài)、已暫停狀態(tài)、已刪除狀態(tài)、未開始狀態(tài)以及已完成狀態(tài)。
在本發(fā)一實施例中,所述任務狀態(tài)的轉換為:
所述暫停狀態(tài)通過恢復操作轉換為所述未開始狀態(tài)或所述進行中狀態(tài);所述暫停狀態(tài)經闡述操作轉換為所述已刪除狀態(tài);
所述未開始狀態(tài)通過暫停操作轉換為所述暫停操作;所述未開始狀態(tài)在到達撥測時間使,轉換為所述進行中狀態(tài);所述未開始狀態(tài)經刪除操作轉換為所述已刪除狀態(tài);
所述進行中狀態(tài)經暫停操作轉換為所述暫停操作;所述進行中狀態(tài)經刪除操作轉換為已刪除狀態(tài);所述進行中狀態(tài)經撥測完成后,轉換為所述已完成狀態(tài);
所述已完成狀態(tài)經刪除操作轉換為已刪除狀態(tài)。
相較于現有技術,本發(fā)明具有以下有益效果:本發(fā)明提供的一種基于爬蟲技術的iptv業(yè)務質量撥測方法,采集全面,只需要給定的epg節(jié)目入口url,就可以對頁面進行反復逐級抓取。有特殊情況需要特殊處理才能采集的,也支持配置腳本。配置靈活,支持動態(tài)調整、自動定時采集。精度高,支持正則表達式和腳本配置更加做到精準采集。提高了天翼高清業(yè)務內容質量監(jiān)管,同時可對各地市實現問題內容的集約化管理,從而加大了撥測規(guī)模,提高了平臺撥測范圍及效。
附圖說明
圖1為本發(fā)明一實施例中epg節(jié)目撥測流程圖。
圖2為本發(fā)明一實施例中基于爬蟲技術的iptv業(yè)務質量撥測系統(tǒng)的框架圖。
圖3為本發(fā)明一實施例中撥測任務狀態(tài)扭轉圖。
具體實施方式
下面結合附圖,對本發(fā)明的技術方案進行具體說明。
本發(fā)明提供一種基于爬蟲技術的iptv業(yè)務質量撥測方法,如圖1所示,包括如下步驟:
步驟s1.掃描待撥測的任務,獲取要撥測epg節(jié)點、業(yè)務類型及地市;
步驟s2.獲取epg節(jié)點對應iptv用戶信息,模擬其機頂盒登陸過程并獲取會話相關信息;
步驟s3.判斷要撥測的業(yè)務類型;
步驟s4.若是直播類或視頻點播類則根據其besttvcode,獲取對應視頻播放地址,并檢測其是否可播放;
步驟s5.若是增值類業(yè)務則僅對其首頁連通性進行測試;
步驟s6.若是看吧類業(yè)務則執(zhí)行以下流程
步驟s6.1.分析給定的epg節(jié)目入口url,對頁面進行可訪問性檢測,出錯則記錄原因并停止檢測此頁面;
步驟s6.2.抓取頁面中的圖片并進行可訪問性檢測,出錯則記錄原因;
步驟s6.3.通過正則表達式抓取頁面中的具體節(jié)目url,先重復步驟s6.1-步驟s6.2步驟,然后分析獲取其播放地址并檢測其是否可播放,是否缺集等
步驟sa)根據url獲取頁面html內容;
步驟sb)根據html內容分析出頁面中視頻節(jié)日標題;
步驟sc)通過正則表達式抓取從html內容分析出視頻節(jié)日播放url;
步驟sd)訪問視頻節(jié)日播放url,獲取節(jié)目的besttvcode;
步驟se)根據節(jié)目的besttvcode獲取其視頻流播放地址;
步驟sf)根據獲取的視頻流播放地址,利用vlcj播放視頻檢測視頻流是否正常,若不能播放則記錄原因;
步驟s6.4.通過正則表達式抓取頁面中的分類節(jié)目url,重復步驟s6.1-步驟s6.3步驟。
進一步的,在本實施例中,為了保障高清視頻業(yè)務的良好運行,取代傳統(tǒng)人工撥測方式,模擬機頂盒,實現賬號與節(jié)點關聯(lián)綁定,通過檢測任務模式,定時定量靈活實現對epg首頁/看吧/視頻點播/直播/增值業(yè)務的在線監(jiān)測、實時報警,從而加大撥測規(guī)模,提高平臺撥測范圍及成效,將日常維護集中化管理。獲取epg節(jié)點對應iptv用戶信息,模擬其機頂盒登陸過程并獲取會話相關信息;分析給定的epg節(jié)目入口url,通過正則表達式抓取頁面中的具體節(jié)目url,對頁面進行可訪問性檢測,出錯則記錄原因并停止檢測此頁面,抓取頁面中的圖片并進行可訪問性檢測,出錯則記錄原因,然后分析獲取其播放地址并檢測其是否可播放,是否缺集等。
進一步的,在本實施例中,如圖2所示,還包括一種基于爬蟲技術的iptv業(yè)務質量撥測系統(tǒng)。其中,撥測方案管理模塊用于可選擇性的對全省或各地市的不同業(yè)務類型下的所有節(jié)目進行撥測方案的配置。撥測任務管理模塊用于對已提交成功的撥測方案按其撥測時間在任務隊列中的進度進行查看,可查看某一撥測方案不同業(yè)務類型的當前撥測節(jié)目完成情況。同時,可對不同狀態(tài)下的任務進行對應的暫停、刪除操作。撥測結果查詢模塊可查看各撥測狀態(tài)下的撥測結果信息,即:各節(jié)目正常、異常(含錯誤代碼)信息等。告警管理模塊實現對錯誤代碼中需要提示的告警事件、對應的告警級別進行配置。
進一步的,在本實施例中,如圖3所示,提供:
業(yè)務規(guī)則:
1)任務暫停后可恢復暫停;
2)任務狀態(tài):進行中、已暫停、已刪除、未開始、已完成。
其中,暫停狀態(tài)通過恢復操作轉換為未開始狀態(tài)或進行中狀態(tài);暫停狀態(tài)經闡述操作轉換為已刪除狀態(tài);
未開始狀態(tài)通過暫停操作轉換為暫停操作;未開始狀態(tài)在到達撥測時間使,轉換為進行中狀態(tài);未開始狀態(tài)經刪除操作轉換為已刪除狀態(tài);
進行中狀態(tài)經暫停操作轉換為暫停操作;進行中狀態(tài)經刪除操作轉換為已刪除狀態(tài);進行中狀態(tài)經撥測完成后,轉換為已完成狀態(tài);
已完成狀態(tài)經刪除操作轉換為已刪除狀態(tài)。
以上是本發(fā)明的較佳實施例,凡依本發(fā)明技術方案所作的改變,所產生的功能作用未超出本發(fā)明技術方案的范圍時,均屬于本發(fā)明的保護范圍。