本文涉及但不限于計(jì)算機(jī)技術(shù),尤指一種獲取售前售后問題的方法、裝置和系統(tǒng)。
背景技術(shù):
目前公司的售前售后針對用戶在各個渠道(如微博、論壇、京東、天貓等)所反饋的問題的搜集基本上都是通過人工方式,該方式人工成本高且效率較低。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提出了一種獲取售前售后問題的方法、裝置和系統(tǒng),能夠提高效率。
本發(fā)明實(shí)施例提出了一種獲取售前售后問題的裝置,包括:
生成模塊,用于根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表;
發(fā)送模塊,用于向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求;其中,抓取售前售后問題的請求包括最終參數(shù)表;
接收模塊,用于獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù);
保存模塊,用于保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。
可選的,還包括:
設(shè)置模塊,用于預(yù)先設(shè)置所述抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表、以及生成規(guī)則。
可選的,所述保存模塊具體用于:
將所述第一數(shù)據(jù)或所述第二數(shù)據(jù)保存到緩存服務(wù)器集群中。
可選的,所述保存模塊具體用于:
判斷出所述第一數(shù)據(jù)或所述第二數(shù)據(jù)的用戶互聯(lián)網(wǎng)協(xié)議IP地址在預(yù)先設(shè)置的黑名單中,將所述第三數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中。
可選的,所述保存模塊還用于:
判斷出所述第一數(shù)據(jù)或所述第二數(shù)據(jù)的用戶IP地址不在所述黑名單中,確定每一個所述第一數(shù)據(jù)或所述第二數(shù)據(jù)所屬的售前售后問題;
將所述第一數(shù)據(jù)或所述第二數(shù)據(jù)中屬于同一售前售后問題的第三數(shù)據(jù)中的第四數(shù)據(jù)保存到攻擊性較強(qiáng)類問題數(shù)據(jù)庫中;和/或,將所述第三數(shù)據(jù)中的第五數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中,并將所述第五數(shù)據(jù)的用戶IP地址保存到所述黑名單中;和/或,將所述第三數(shù)據(jù)中的第六數(shù)據(jù)保存到普通問題數(shù)據(jù)庫中;
其中,所述第四數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且所述第四數(shù)據(jù)的用戶IP地址相同,且所述第四數(shù)據(jù)的個數(shù)小于第二預(yù)設(shè)閾值;
所述第五數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且所述第五數(shù)據(jù)的用戶IP地址相同,且所述第五數(shù)據(jù)的個數(shù)大于或等于第二預(yù)設(shè)閾值;
所述第六數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)小于所述第一預(yù)設(shè)閾值。
本發(fā)明實(shí)施例還提出了一種獲取售前售后問題的方法,包括:
獲取售前售后問題的裝置根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表;
獲取售前售后問題的裝置向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求;其中,抓取售前售后問題的請求包括最終參數(shù)表;
獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù),保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。
可選的,該方法之前還包括:
所述獲取售前售后問題的裝置預(yù)先設(shè)置所述抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表、以及生成規(guī)則。
可選的,所述保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)包括:
將所述第一數(shù)據(jù)或所述第二數(shù)據(jù)保存到緩存服務(wù)器集群中。
可選的,所述保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)包括:
判斷出所述第一數(shù)據(jù)或所述第二數(shù)據(jù)的用戶互聯(lián)網(wǎng)協(xié)議IP地址在預(yù)先設(shè)置的黑名單中,將所述第三數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中。
可選的,所述保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)還包括:
判斷出所述第一數(shù)據(jù)或所述第二數(shù)據(jù)的用戶IP地址不在所述黑名單中,確定每一個所述第一數(shù)據(jù)或所述第二數(shù)據(jù)所屬的售前售后問題;
將所述第一數(shù)據(jù)或所述第二數(shù)據(jù)中屬于同一售前售后問題的第三數(shù)據(jù)中的第四數(shù)據(jù)保存到攻擊性較強(qiáng)類問題數(shù)據(jù)庫中;和/或,將所述第三數(shù)據(jù)中的第五數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中,并將所述第五數(shù)據(jù)的用戶IP地址保存到所述黑名單中;和/或,將所述第三數(shù)據(jù)中的第六數(shù)據(jù)保存到普通問題數(shù)據(jù)庫中;
其中,所述第四數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且所述第四數(shù)據(jù)的用戶IP地址相同,且所述第四數(shù)據(jù)的個數(shù)小于第二預(yù)設(shè)閾值;
所述第五數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且所述第五數(shù)據(jù)的用戶IP地址相同,且所述第五數(shù)據(jù)的個數(shù)大于或等于第二預(yù)設(shè)閾值;
所述第六數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)小于所述第一預(yù)設(shè)閾值。
與相關(guān)技術(shù)相比,本發(fā)明實(shí)施例包括:獲取售前售后問題的裝置根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表;獲取售前售后問題的裝置向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求;其中,抓取售前售后問題的請求包括最終參數(shù)表;獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù),保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。通過本發(fā)明實(shí)施例的方案,實(shí)現(xiàn)了自動獲取售前售后問題的數(shù)據(jù),從而提高了效率;并且根據(jù)預(yù)先設(shè)置的原始參數(shù)表和規(guī)則參數(shù)表來獲取售前售后問題的數(shù)據(jù),從而進(jìn)一步提高了效率,并提高了獲取售前售后問題的數(shù)據(jù)的靈活性。
附圖說明
下面對本發(fā)明實(shí)施例中的附圖進(jìn)行說明,實(shí)施例中的附圖是用于對本發(fā)明的進(jìn)一步理解,與說明書一起用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明保護(hù)范圍的限制。
圖1為本發(fā)明第一實(shí)施例獲取售前售后問題的方法的流程圖;
圖2為本發(fā)明第二實(shí)施例獲取售前售后問題的方法的流程圖;
圖3為本發(fā)明第三實(shí)施例獲取售前售后問題的方法的流程圖;
圖4為本發(fā)明第四實(shí)施例獲取售前售后問題的裝置的結(jié)構(gòu)組成示意圖;
圖5為本發(fā)明第五實(shí)施例服務(wù)器的結(jié)構(gòu)組成示意圖;
圖6為本發(fā)明第六實(shí)施例獲取售前售后問題的系統(tǒng)的結(jié)構(gòu)組成示意圖。
本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)一步說明。
具體實(shí)施方式
為了便于本領(lǐng)域技術(shù)人員的理解,下面結(jié)合附圖對本發(fā)明作進(jìn)一步的描述,并不能用來限制本發(fā)明的保護(hù)范圍。需要說明的是,在不沖突的情況下,本申請中的實(shí)施例及實(shí)施例中的各種方式可以相互組合。
應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
如圖1所示,本發(fā)明第一實(shí)施例提出一種獲取售前售后問題的方法,包括:
步驟100、獲取售前售后問題的裝置根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表。
本步驟中,抓取渠道可以包括以下的任意一個或多個:
應(yīng)用中心(如QQ、微信等)、電子商城(如京東、天貓等)、微博、論壇等。
不同的抓取渠道對應(yīng)的原始參數(shù)表和規(guī)則參數(shù)表均不相同,例如,對于應(yīng)用中心,原始參數(shù)表包括:
app_id=23,app_name=qq,version_code=32,words=j(luò)ordan,words=23,words=喬丹,company=tencent。
規(guī)則參數(shù)表包括:訪問接口是否需要校驗(yàn)。
如果訪問接口需要校驗(yàn),則規(guī)則參數(shù)表還包括:校驗(yàn)方式。
如果校驗(yàn)方式為尾部增加校驗(yàn)碼,則規(guī)則參數(shù)表還包括:校驗(yàn)碼參數(shù)名稱、校驗(yàn)碼生成算法、預(yù)先約定的驗(yàn)證碼、是否需要添加當(dāng)前時間戳、參數(shù)是否需要排序。
如果需要添加當(dāng)前時間戳,則規(guī)則參數(shù)表還包括:當(dāng)前時間戳參數(shù)名稱。
例如,規(guī)則參數(shù)表包括:
訪問接口是否需要校驗(yàn):是;
校驗(yàn)方式:尾部增加校驗(yàn)碼;
校驗(yàn)碼參數(shù)名稱:sign;
校驗(yàn)碼生成算法:消息摘要算法第五版(MD5,Message Digest Algorithm5);
參數(shù)是否需要排序:是;
預(yù)先約定的驗(yàn)證碼:ACE03232105688;
是否需要添加當(dāng)前時間戳:是;
當(dāng)前時間戳參數(shù)名稱:time。
那么,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表包括:
根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù),將校驗(yàn)碼參數(shù)添加到原始參數(shù)表中生成最終參數(shù)表。
可選的,當(dāng)規(guī)則參數(shù)表中是否需要添加當(dāng)前時間戳為需要添加當(dāng)前時間戳?xí)r,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表包括:
根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù),將校驗(yàn)碼參數(shù)和當(dāng)前時間戳參數(shù)添加到原始參數(shù)表中生成最終參數(shù)表。
對于上述例子,在根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù)時,首先在原始參數(shù)表中添加當(dāng)前時間戳參數(shù);
例如,添加的當(dāng)前時間戳參數(shù)為time=1437374155,則添加當(dāng)前時間戳參數(shù)后的原始參數(shù)表包括:app_id=23,app_name=qq,version_code=32,words=j(luò)ordan,words=23,words=喬丹,company=tencent,time=1437374155。
然后對添加當(dāng)前時間戳參數(shù)后的原始參數(shù)表按照參數(shù)名稱進(jìn)行排序(可以是升序排序,也可以是降序排序等),如果參數(shù)內(nèi)容為數(shù)組,則對參數(shù)內(nèi)容也進(jìn)行排序;
例如,排序后的原始參數(shù)表包括:app_id=23,app_name=qq,company=tencent,time=1437374155,version_code=32,words=23,words=Jordan,words=喬丹。
接著,將排序后的原始參數(shù)表連接成一個字符串,并在字符串尾部添加預(yù)先約定的驗(yàn)證碼;
例如,添加驗(yàn)證碼后的字符串為app_id=23app_name=qqcompany=tencenttime=1437374155969version_code=32words=23words=j(luò)ordanwords=喬丹ACE03232105688;
最后,采用校驗(yàn)碼生成算法對添加驗(yàn)證碼后的字符串進(jìn)行計(jì)算得到校驗(yàn)碼參數(shù);
例如,采用MD5計(jì)算得到的校驗(yàn)碼參數(shù)為1234567890abcdef。
那么,最終參數(shù)表包括:
app_id=23,app_name=qq,version_code=32,company=tencent,time=1437374155969,words=j(luò)ordan,words=23,words=喬丹,sign=1234567890abcdef。
又如,對于電子商城,原始參數(shù)表包括:user_name=j(luò)ordan,password=123456。
規(guī)則參數(shù)表包括:訪問接口是否需要校驗(yàn)。
如果訪問接口需要校驗(yàn),則規(guī)則參數(shù)表還包括:校驗(yàn)方式。
如果校驗(yàn)方式為整體加密,則規(guī)則參數(shù)表還包括:加密內(nèi)容參數(shù)名稱、加密算法、加密密鑰、參數(shù)是否需要排序、是否需要增加驗(yàn)證碼、是否需要添加當(dāng)前時間戳、
如果需要增加驗(yàn)證碼,則規(guī)則參數(shù)表還包括:預(yù)先約定的驗(yàn)證碼、驗(yàn)證碼參數(shù)名稱。
如果需要添加當(dāng)前時間戳,則規(guī)則參數(shù)表還包括:當(dāng)前時間戳參數(shù)名稱。
例如,規(guī)則參數(shù)表包括:
訪問接口是否需要校驗(yàn):是;
校驗(yàn)方式:整體加密;
加密內(nèi)容參數(shù)名稱:format_data_result;
加密算法:高級加密標(biāo)準(zhǔn)(AES,Advanced Encryption Standard)算法;
加密密鑰:1234567890ABCDEF;
參數(shù)是否需要排序:否;
是否需要增加校驗(yàn)碼:是;
預(yù)先約定的校驗(yàn)碼:ACE03232105688;
驗(yàn)證碼參數(shù)名稱:auth_token_id;
是否需要添加當(dāng)前時間戳:是;
當(dāng)前時間戳參數(shù)名稱:format_data_timestamp。
對于上述例子,在按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表時,首先在原始參數(shù)表中添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù);
例如,添加的驗(yàn)證碼參數(shù)為auth_token_id=ACE03232105688,添加的當(dāng)前時間戳參數(shù)為format_data_timestamp=1481515200,則添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù)后的原始參數(shù)表包括:user_name=j(luò)ordan,password=123456,format_data_timestamp=1481515200。
然后,將添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù)后的原始參數(shù)表連接成一個字符串;
例如,字符串為user_name=j(luò)ordan&password=123456&auth_token_id=ACE03232105688&form at_data_timestamp=1481515200。
最后,采用AES算法對字符串進(jìn)行加密得到加密后的字符串為7f2fdc5be7c9696458ed50d388f1eae688af9e3a53cb45c1f955c066c4922807。
那么,最終參數(shù)表包括:format_data_result=7f2fdc5be7c9696458ed50d388f1eae688af9e3a53cb45c1f955c066c4922807&auth_token_id=ACE03232105688。
本步驟中,如果想獲取某一移動終端品牌的售前售后問題的數(shù)據(jù),那么原始參數(shù)表中應(yīng)包含移動終端品牌參數(shù),則步驟102中獲得的第一數(shù)據(jù)即為該移動終端品牌相關(guān)的售前售后問題的數(shù)據(jù)。
對于其他的抓取渠道,其也可以采用類似的方式來生成最終參數(shù)表,具體生成規(guī)則、原始參數(shù)表和規(guī)則參數(shù)表由具體的抓取渠道對應(yīng)的服務(wù)器的接口函數(shù)及校驗(yàn)規(guī)則確定,只要知道抓取渠道對應(yīng)的服務(wù)器的接口函數(shù)及校驗(yàn)規(guī)則,就能夠確定生成規(guī)則、原始參數(shù)表和規(guī)則參數(shù)表。
步驟101、獲取售前售后問題的裝置向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求。
其中,抓取售前售后問題的請求包括最終參數(shù)表。
步驟102、獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù),保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。
本步驟中,獲取售前售后問題的裝置接收到第一數(shù)據(jù)后,根據(jù)預(yù)先設(shè)置的返回值格式正則表達(dá)式區(qū)分每一個第一數(shù)據(jù)。例如,對于應(yīng)用中心,可以預(yù)先設(shè)置返回值格式正則表達(dá)式為commentList:*,那么,相鄰兩個commentList:之間的數(shù)據(jù)即為一個第一數(shù)據(jù);對于電子商城,可以預(yù)先設(shè)置返回值格式正則表達(dá)式為user_comment_list:*,那么相鄰兩個user_comment_list:之間的數(shù)據(jù)即為一個第一數(shù)據(jù)。
其中,第一數(shù)據(jù)包括時間戳、用戶IP地址和用戶對于售前售后問題發(fā)表的內(nèi)容(如評論內(nèi)容等)。
本步驟中,保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)包括:
將第一數(shù)據(jù)或第二數(shù)據(jù)保存到緩存服務(wù)器集群中。
其中,緩存服務(wù)器集群可以是redis服務(wù)器集群。
可選的,獲取售前售后問題的裝置定時將緩存服務(wù)器集群中的數(shù)據(jù)保存到持久化存儲設(shè)備中。
本步驟中,保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)包括:
判斷出第一數(shù)據(jù)或第二數(shù)據(jù)的用戶互聯(lián)網(wǎng)協(xié)議(IP,Internet Protocol)地址在預(yù)先設(shè)置的黑名單中,將第三數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中。
可選的,保存接收到的售前售后問題的第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)還包括:
判斷出第一數(shù)據(jù)或所述第二數(shù)據(jù)的用戶IP地址不在黑名單中,確定每一個第一數(shù)據(jù)或第二數(shù)據(jù)所屬的售前售后問題;
將第一數(shù)據(jù)或第二數(shù)據(jù)中屬于同一售前售后問題的第三數(shù)據(jù)中的第四數(shù)據(jù)保存到攻擊性較強(qiáng)類問題數(shù)據(jù)庫中;和/或,將第三數(shù)據(jù)中的第五數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中,并將第五數(shù)據(jù)的用戶IP地址保存到黑名單中;和/或,將第三數(shù)據(jù)中的第六數(shù)據(jù)保存到普通問題數(shù)據(jù)庫中;
其中,每一個第四數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且第四數(shù)據(jù)的用戶IP地址相同,且第四數(shù)據(jù)的個數(shù)小于第二預(yù)設(shè)閾值;
第五數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且第五數(shù)據(jù)的用戶IP地址相同,且第五數(shù)據(jù)的個數(shù)大于或等于第二預(yù)設(shè)閾值;
第六數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)小于第一預(yù)設(shè)閾值。
可選的,該方法之前還包括:
獲取售前售后問題的裝置預(yù)先設(shè)置抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表、以及生成規(guī)則。
其中,原始參數(shù)表和規(guī)則參數(shù)表可以由用戶在交互界面輸入進(jìn)行設(shè)置。
生成規(guī)則由用戶導(dǎo)入腳本或程序代碼進(jìn)行設(shè)置。
通過本發(fā)明實(shí)施例的方案,實(shí)現(xiàn)了自動獲取售前售后問題的數(shù)據(jù),從而提高了效率;并且根據(jù)預(yù)先設(shè)置的原始參數(shù)表和規(guī)則參數(shù)表來獲取售前售后問題的數(shù)據(jù),從而進(jìn)一步提高了效率,并提高了獲取售前售后問題的數(shù)據(jù)的靈活性。
如圖2所示,本發(fā)明第二實(shí)施例提出一種獲取售前售后問題的方法,包括:
步驟200、獲取渠道對應(yīng)的服務(wù)器接收到來自獲取售前售后問題的裝置的抓取售前售后問題的請求。
步驟201、獲取渠道對應(yīng)的服務(wù)器對抓取售前售后問題的請求中的最終參數(shù)表進(jìn)行校驗(yàn),校驗(yàn)通過后獲取最終參數(shù)表中的原始參數(shù)表。
本步驟中,對于步驟100列舉的應(yīng)用中心的例子,在對最終參數(shù)表進(jìn)行校驗(yàn)時,首先對最終參數(shù)表中的校驗(yàn)碼參數(shù)采用校驗(yàn)碼生成算法的逆算法計(jì)算添加驗(yàn)證碼后的字符串;
然后,在添加驗(yàn)證碼后的字符串的尾部提取一下約定的驗(yàn)證碼,如果提取的驗(yàn)證碼與自身保存的驗(yàn)證碼相同,則校驗(yàn)通過;如果提取的驗(yàn)證碼與自身保存的驗(yàn)證碼不相同,則校驗(yàn)不通過。
最終參數(shù)表中除校驗(yàn)碼參數(shù)和當(dāng)前時間戳參數(shù)之外的參數(shù)即為原始參數(shù)表。
對于步驟100列舉的電子商城的例子,在對最終參數(shù)表進(jìn)行校驗(yàn)時,對最終參數(shù)表采用AES算法的逆算法進(jìn)行解碼得到字符串,獲取字符串中的驗(yàn)證碼參數(shù),如果獲得的驗(yàn)證碼參數(shù)和自身保存的驗(yàn)證碼相同,則校驗(yàn)通過;如果提取的驗(yàn)證碼參數(shù)和自身保存的驗(yàn)證碼不相同,則校驗(yàn)不通過。
字符串中除驗(yàn)證碼參數(shù)和當(dāng)前時間戳參數(shù)外的參數(shù)即為原始參數(shù)表。
步驟202、獲取渠道對應(yīng)的服務(wù)器查找原始參數(shù)表對應(yīng)的售前售后問題的第一數(shù)據(jù),將第一數(shù)據(jù)發(fā)送給獲取售前售后問題的裝置。
如圖3所示,本發(fā)明第三實(shí)施例提出了一種獲取售前售后問題的方法,包括:
步驟300、獲取售前售后問題的裝置根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表。
步驟301、獲取售前售后問題的裝置向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求。
其中,抓取售前售后問題的請求包括最終參數(shù)表。
步驟302、獲取渠道對應(yīng)的服務(wù)器接收到來自獲取售前售后問題的裝置的抓取售前售后問題的請求,對抓取售前售后問題的請求中的最終參數(shù)表進(jìn)行校驗(yàn),校驗(yàn)通過后獲取最終參數(shù)表中的原始參數(shù)表。
步驟303、獲取渠道對應(yīng)的服務(wù)器查找原始參數(shù)表對應(yīng)的售前售后問題的第一數(shù)據(jù),將第一數(shù)據(jù)發(fā)送給獲取售前售后問題的裝置。
步驟304、獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù),保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。
上述各個步驟的具體實(shí)現(xiàn)可以參考第一實(shí)施例和第二實(shí)施例的方法,這里不再贅述。
參見圖4,本發(fā)明第四實(shí)施例提出了一種獲取售前售后問題的裝置,包括:
生成模塊,用于根據(jù)預(yù)先設(shè)置的抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表,按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表;
發(fā)送模塊,用于向抓取渠道對應(yīng)的服務(wù)器發(fā)送抓取售前售后問題的請求;其中,抓取售前售后問題的請求包括最終參數(shù)表;
接收模塊,用于獲取售前售后問題的裝置接收到來自抓取渠道對應(yīng)的服務(wù)器的售前售后問題的第一數(shù)據(jù);
保存模塊,用于保存第一數(shù)據(jù)或第一數(shù)據(jù)中時間戳大于上一次接收到的售前售后問題的第一數(shù)據(jù)的最晚時間戳的第二數(shù)據(jù)。
其中,抓取渠道可以包括以下的任意一個或多個:
應(yīng)用中心(如QQ、微信等)、電子商城(如京東、天貓等)、微博、論壇等。
不同的抓取渠道對應(yīng)的原始參數(shù)表和規(guī)則參數(shù)表均不相同,例如,對于應(yīng)用中心,原始參數(shù)表包括:
app_id=23,app_name=qq,version_code=32,words=j(luò)ordan,words=23,words=喬丹,company=tencent。
規(guī)則參數(shù)表包括:訪問接口是否需要校驗(yàn)。
如果訪問接口需要校驗(yàn),則規(guī)則參數(shù)表還包括:校驗(yàn)方式。
如果校驗(yàn)方式為尾部增加校驗(yàn)碼,則規(guī)則參數(shù)表還包括:校驗(yàn)碼參數(shù)名稱、校驗(yàn)碼生成算法、預(yù)先約定的驗(yàn)證碼、是否需要添加當(dāng)前時間戳、參數(shù)是否需要排序。
如果需要添加當(dāng)前時間戳,則規(guī)則參數(shù)表還包括:當(dāng)前時間戳參數(shù)名稱。
例如,規(guī)則參數(shù)表包括:
訪問接口是否需要校驗(yàn):是;
校驗(yàn)方式:尾部增加校驗(yàn)碼;
校驗(yàn)碼參數(shù)名稱:sign;
校驗(yàn)碼生成算法:消息摘要算法第五版(MD5,Message Digest Algorithm5);
參數(shù)是否需要排序:是;
預(yù)先約定的驗(yàn)證碼:ACE03232105688;
是否需要添加當(dāng)前時間戳:是;
當(dāng)前時間戳參數(shù)名稱:time。
那么,生成模塊具體用于采用以下方式實(shí)現(xiàn)按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表:
根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù),將校驗(yàn)碼參數(shù)添加到原始參數(shù)表中生成最終參數(shù)表。
可選的,當(dāng)規(guī)則參數(shù)表中是否需要添加當(dāng)前時間戳為需要添加當(dāng)前時間戳?xí)r,生成模塊具體用于采用以下方式實(shí)現(xiàn)按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表:
根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù),將校驗(yàn)碼參數(shù)和當(dāng)前時間戳參數(shù)添加到原始參數(shù)表中生成最終參數(shù)表。
對于上述例子,生成模塊在根據(jù)原始參數(shù)表和規(guī)則參數(shù)表計(jì)算校驗(yàn)碼參數(shù)時,首先在原始參數(shù)表中添加當(dāng)前時間戳參數(shù);
例如,添加的當(dāng)前時間戳參數(shù)為time=1437374155,則添加當(dāng)前時間戳參數(shù)后的原始參數(shù)表包括:app_id=23,app_name=qq,version_code=32,words=j(luò)ordan,words=23,words=喬丹,company=tencent,time=1437374155。
然后對添加當(dāng)前時間戳參數(shù)后的原始參數(shù)表按照參數(shù)名稱進(jìn)行排序(可以是升序排序,也可以是降序排序等),如果參數(shù)內(nèi)容為數(shù)組,則對參數(shù)內(nèi)容也進(jìn)行排序;
例如,排序后的原始參數(shù)表包括:app_id=23,app_name=qq,company=tencent,time=1437374155,version_code=32,words=23,words=Jordan,words=喬丹。
接著,將排序后的原始參數(shù)表連接成一個字符串,并在字符串尾部添加預(yù)先約定的驗(yàn)證碼;
例如,添加驗(yàn)證碼后的字符串為app_id=23app_name=qqcompany=tencenttime=1437374155969version_code=32words=23words=j(luò)ordanwords=喬丹ACE03232105688;
最后,采用校驗(yàn)碼生成算法對添加驗(yàn)證碼后的字符串進(jìn)行計(jì)算得到校驗(yàn)碼參數(shù);
例如,采用MD5計(jì)算得到的校驗(yàn)碼參數(shù)為1234567890abcdef。
那么,最終參數(shù)表包括:
app_id=23,app_name=qq,version_code=32,company=tencent,time=1437374155969,words=j(luò)ordan,words=23,words=喬丹,sign=1234567890abcdef。
又如,對于電子商城,原始參數(shù)表包括:user_name=j(luò)ordan,password=123456。
規(guī)則參數(shù)表包括:訪問接口是否需要校驗(yàn)。
如果訪問接口需要校驗(yàn),則規(guī)則參數(shù)表還包括:校驗(yàn)方式。
如果校驗(yàn)方式為整體加密,則規(guī)則參數(shù)表還包括:加密內(nèi)容參數(shù)名稱、加密算法、加密密鑰、參數(shù)是否需要排序、是否需要增加驗(yàn)證碼、是否需要添加當(dāng)前時間戳、
如果需要增加驗(yàn)證碼,則規(guī)則參數(shù)表還包括:預(yù)先約定的驗(yàn)證碼、驗(yàn)證碼參數(shù)名稱。
如果需要添加當(dāng)前時間戳,則規(guī)則參數(shù)表還包括:當(dāng)前時間戳參數(shù)名稱。
例如,規(guī)則參數(shù)表包括:
訪問接口是否需要校驗(yàn):是;
校驗(yàn)方式:整體加密;
加密內(nèi)容參數(shù)名稱:format_data_result;
加密算法:高級加密標(biāo)準(zhǔn)(AES,Advanced Encryption Standard)算法;
加密密鑰:1234567890ABCDEF;
參數(shù)是否需要排序:否;
是否需要增加校驗(yàn)碼:是;
預(yù)先約定的校驗(yàn)碼:ACE03232105688;
驗(yàn)證碼參數(shù)名稱:auth_token_id;
是否需要添加當(dāng)前時間戳:是;
當(dāng)前時間戳參數(shù)名稱:format_data_timestamp。
對于上述例子,生成模塊在按照預(yù)先設(shè)置的生成規(guī)則生成抓取渠道對應(yīng)的最終參數(shù)表時,首先在原始參數(shù)表中添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù);
例如,添加的驗(yàn)證碼參數(shù)為auth_token_id=ACE03232105688,添加的當(dāng)前時間戳參數(shù)為format_data_timestamp=1481515200,則添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù)后的原始參數(shù)表包括:user_name=j(luò)ordan,password=123456,format_data_timestamp=1481515200。
然后,將添加當(dāng)前時間戳參數(shù)和驗(yàn)證碼參數(shù)后的原始參數(shù)表連接成一個字符串;
例如,字符串為user_name=j(luò)ordan&password=123456&auth_token_id=ACE03232105688&form at_data_timestamp=1481515200。
最后,采用AES算法對字符串進(jìn)行加密得到加密后的字符串為7f2fdc5be7c9696458ed50d388f1eae688af9e3a53cb45c1f955c066c4922807。
那么,最終參數(shù)表包括:format_data_result=7f2fdc5be7c9696458ed50d388f1eae688af9e3a53cb45c1f955c066c4922807&auth_token_id=ACE03232105688。
本步驟中,如果想獲取某一移動終端品牌的售前售后問題的數(shù)據(jù),那么原始參數(shù)表中應(yīng)包含移動終端品牌參數(shù),則接收模塊獲得的第一數(shù)據(jù)即為該移動終端品牌相關(guān)的售前售后問題的數(shù)據(jù)。
對于其他的抓取渠道,生成模塊也可以采用類似的方式來生成最終參數(shù)表,具體生成規(guī)則、原始參數(shù)表和規(guī)則參數(shù)表由具體的抓取渠道對應(yīng)的服務(wù)器的接口函數(shù)及校驗(yàn)規(guī)則確定,只要知道抓取渠道對應(yīng)的服務(wù)器的接口函數(shù)及校驗(yàn)規(guī)則,就能夠確定生成規(guī)則、原始參數(shù)表和規(guī)則參數(shù)表。
其中,接收模塊接收到第一數(shù)據(jù)后,根據(jù)預(yù)先設(shè)置的返回值格式正則表達(dá)式區(qū)分每一個第一數(shù)據(jù)。例如,對于應(yīng)用中心,可以預(yù)先設(shè)置返回值格式正則表達(dá)式為commentList:*,那么,相鄰兩個commentList:之間的數(shù)據(jù)即為一個第一數(shù)據(jù);對于電子商城,可以預(yù)先設(shè)置返回值格式正則表達(dá)式為user_comment_list:*,那么相鄰兩個user_comment_list:之間的數(shù)據(jù)即為一個第一數(shù)據(jù)。
可選的,還包括:
設(shè)置模塊,用于預(yù)先設(shè)置抓取渠道對應(yīng)的服務(wù)器的訪問接口的接口函數(shù)的原始參數(shù)表和規(guī)則參數(shù)表、以及生成規(guī)則。
可選的,保存模塊具體用于:
將第一數(shù)據(jù)或第二數(shù)據(jù)保存到緩存服務(wù)器集群中。其中,緩存服務(wù)器集群可以是redis服務(wù)器集群。
可選的,保存模塊還用于:
定時將緩存服務(wù)器集群中的數(shù)據(jù)保存到持久化存儲設(shè)備中。
可選的,保存模塊具體用于:
判斷出第一數(shù)據(jù)或第二數(shù)據(jù)的用戶IP地址在預(yù)先設(shè)置的黑名單中,將第三數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中。
可選的,保存模塊還用于:
判斷出第一數(shù)據(jù)或第二數(shù)據(jù)的用戶IP地址不在黑名單中,確定每一個第一數(shù)據(jù)或第二數(shù)據(jù)所屬的售前售后問題;
將第一數(shù)據(jù)或第二數(shù)據(jù)中屬于同一售前售后問題的第三數(shù)據(jù)中的第四數(shù)據(jù)保存到攻擊性較強(qiáng)類問題數(shù)據(jù)庫中;和/或,將第三數(shù)據(jù)中的第五數(shù)據(jù)保存到疑似水軍或競爭對手問題數(shù)據(jù)庫中,并將第五數(shù)據(jù)的用戶IP地址保存到黑名單中;和/或,將第三數(shù)據(jù)中的第六數(shù)據(jù)保存到普通問題數(shù)據(jù)庫中;
其中,第四數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且第四數(shù)據(jù)的用戶IP地址相同,且第四數(shù)據(jù)的個數(shù)小于第二預(yù)設(shè)閾值;
第五數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)大于或等于第一預(yù)設(shè)閾值,且第五數(shù)據(jù)的用戶IP地址相同,且第五數(shù)據(jù)的個數(shù)大于或等于第二預(yù)設(shè)閾值;
第六數(shù)據(jù)中每一個數(shù)據(jù)包含的攻擊性詞匯的個數(shù)小于第一預(yù)設(shè)閾值。
參見圖5,本發(fā)明第五實(shí)施例提出了一種服務(wù)器,包括:
請求接收模塊,用于接收到來自獲取售前售后問題的裝置的抓取售前售后問題的請求;
校驗(yàn)?zāi)K,用于對抓取售前售后問題的請求中的最終參數(shù)表進(jìn)行校驗(yàn),校驗(yàn)通過后獲取最終參數(shù)表中的原始參數(shù)表;
查找發(fā)送模塊,用于查找原始參數(shù)表對應(yīng)的售前售后問題的第一數(shù)據(jù),將第一數(shù)據(jù)發(fā)送給獲取售前售后問題的裝置。
其中,對于步驟100列舉的應(yīng)用中心的例子,校驗(yàn)?zāi)K在對最終參數(shù)表進(jìn)行校驗(yàn)時,首先對最終參數(shù)表中的校驗(yàn)碼參數(shù)采用校驗(yàn)碼生成算法的逆算法計(jì)算添加驗(yàn)證碼后的字符串;
然后,在添加驗(yàn)證碼后的字符串的尾部提取一下約定的驗(yàn)證碼,如果提取的驗(yàn)證碼與自身保存的驗(yàn)證碼相同,則校驗(yàn)通過;如果提取的驗(yàn)證碼與自身保存的驗(yàn)證碼不相同,則校驗(yàn)不通過。
最終參數(shù)表中除校驗(yàn)碼參數(shù)和當(dāng)前時間戳參數(shù)之外的參數(shù)即為原始參數(shù)表。
對于步驟100列舉的電子商城的例子,校驗(yàn)?zāi)K在對最終參數(shù)表進(jìn)行校驗(yàn)時,對最終參數(shù)表采用AES算法的逆算法進(jìn)行解碼得到字符串,獲取字符串中的驗(yàn)證碼參數(shù),如果獲得的驗(yàn)證碼參數(shù)和自身保存的驗(yàn)證碼相同,則校驗(yàn)通過;如果提取的驗(yàn)證碼參數(shù)和自身保存的驗(yàn)證碼不相同,則校驗(yàn)不通過。
字符串中除驗(yàn)證碼參數(shù)和當(dāng)前時間戳參數(shù)外的參數(shù)即為原始參數(shù)表。
參見圖6,本發(fā)明第六實(shí)施例提出了一種獲取售前售后問題的系統(tǒng),包括:本發(fā)明第四實(shí)施例提出的任意一個獲取售前售后問題的裝置;還包括:
緩存服務(wù)器集群,用于保存第一數(shù)據(jù)或第二數(shù)據(jù)。
可選的,還包括:
持久化存儲設(shè)備,用于定時保存緩存服務(wù)器集群中的數(shù)據(jù)。
需要說明的是,在本文中,術(shù)語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
通過以上的實(shí)施方式的描述,本領(lǐng)域的技術(shù)人員可以清楚地了解到上述實(shí)施例方法可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn),當(dāng)然也可以通過硬件,但很多情況下前者是更佳的實(shí)施方式。基于這樣的理解,本發(fā)明的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品存儲在一個存儲介質(zhì)(如ROM/RAM、磁碟、光盤)中,包括若干指令用以使得一臺終端設(shè)備(可以是手機(jī),計(jì)算機(jī),服務(wù)器,空調(diào)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個實(shí)施例所述的方法。
以上僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。