本公開涉及web開發(fā),尤其涉及一種自動化美化網(wǎng)頁內(nèi)容的方法、裝置、存儲介質(zhì)、程序產(chǎn)品。
背景技術(shù):
1、隨著數(shù)字時代的到來,互聯(lián)網(wǎng)已成為信息傳播的主要渠道。網(wǎng)頁中文檔的在線編輯、分享與閱讀變得日益普及。然而,現(xiàn)有技術(shù)在處理跨平臺和應(yīng)用間文本內(nèi)容的樣式統(tǒng)一性方面存在明顯不足。當(dāng)文檔內(nèi)容在不同平臺間復(fù)制粘貼時,經(jīng)常遇到樣式不一致的問題,這不僅導(dǎo)致文章呈現(xiàn)混亂,而且嚴(yán)重影響了用戶的閱讀體驗。此外,盡管ai技術(shù)在內(nèi)容生成方面取得了顯著進(jìn)展,但ai生成的文檔樣式多樣性與企業(yè)方的統(tǒng)一要求往往難以匹配。
技術(shù)實現(xiàn)思路
1、有鑒于此,本公開實施例提供了一種自動化美化網(wǎng)頁內(nèi)容的方法、裝置、存儲介質(zhì)、程序產(chǎn)品,能夠簡化了傳統(tǒng)繁瑣的手動樣式編輯過程,降低了人力成本和時間成本,提高樣式統(tǒng)一性,滿足用戶的風(fēng)格要求。
2、第一方面,本公開實施例提供了一種自動化美化網(wǎng)頁內(nèi)容的方法,采用如下技術(shù)方案:
3、從網(wǎng)頁中獲取html內(nèi)容,對所述html內(nèi)容進(jìn)行數(shù)據(jù)提取,獲得內(nèi)容組件,所述內(nèi)容組件包括純文本內(nèi)容和媒體元素中的至少一項;
4、構(gòu)建包含多種樣式規(guī)則的規(guī)則集,基于所述規(guī)則集對所述內(nèi)容組件進(jìn)行樣式美化,生成帶有新樣式的html內(nèi)容;
5、對所述帶有新樣式的html內(nèi)容進(jìn)行動態(tài)組裝,生成目標(biāo)html文檔,將所述目標(biāo)html文檔展示在網(wǎng)頁中。
6、可選地,所述從網(wǎng)頁中獲取html內(nèi)容,對所述html內(nèi)容進(jìn)行數(shù)據(jù)提取,獲得內(nèi)容組件,包括:
7、構(gòu)建dom容器;
8、從網(wǎng)頁加載所述html內(nèi)容;
9、通過所述dom容器對所述html內(nèi)容進(jìn)行解析,生成dom樹;
10、提取所述dom樹中的html元素,將所述html元素存儲到集合中;
11、遍歷所述集合,提取所述集合中的text文本內(nèi)容,如果集合中存在媒體元素,則提取所述媒體元素;
12、對所述text文本內(nèi)容進(jìn)行預(yù)處理,采用預(yù)設(shè)dom元素對預(yù)處理后的text文本內(nèi)容進(jìn)行包裹,生成所述多個純文本內(nèi)容;
13、所述多個純文本內(nèi)容構(gòu)成所述內(nèi)容組件,或者所述多個純文本內(nèi)容與所述媒體元素共同構(gòu)成所述內(nèi)容組件;
14、按照在所述html內(nèi)容中的順序,將所述內(nèi)容組件存儲到緩存數(shù)組中。
15、可選地,所述預(yù)處理包括去除前后空格、合并連續(xù)換行符、敏感詞過濾、內(nèi)容清洗中的至少一項。
16、可選地,所述預(yù)處理包括去除前后空格、合并連續(xù)換行符、敏感詞過濾、內(nèi)容清洗;
17、其中,所述去除前后空格指的是去除text文本內(nèi)容的前后空格;
18、所述合并連續(xù)換行符指的是替換text文本內(nèi)容中的連續(xù)換行符為單個換行符;
19、所述敏感詞過濾指的是根據(jù)預(yù)設(shè)的敏感詞列表,檢查text文本內(nèi)容中是否包含敏感詞,如果發(fā)現(xiàn)敏感詞,將敏感詞替換為預(yù)設(shè)字符或刪除敏感詞;
20、所述內(nèi)容清洗指的是按單個換行符將text文本內(nèi)容拆分為text數(shù)組,text數(shù)組包含多個數(shù)組元素,遍歷多個數(shù)組元素,刪除當(dāng)前數(shù)組元素的前后空格,檢測刪除前后空格后的當(dāng)前數(shù)組元素是否為空;
21、若為空,則刪除當(dāng)前數(shù)組元素;
22、若不為空,則保留當(dāng)前數(shù)組元素,采用預(yù)設(shè)dom元素對當(dāng)前數(shù)組元素進(jìn)行包裹,將包裹后的當(dāng)前數(shù)組元素稱為純文本內(nèi)容,當(dāng)多個數(shù)組元素遍歷完成后,獲得多個純文本內(nèi)容。
23、可選地,所述自動化美化網(wǎng)頁內(nèi)容的方法還包括:
24、對加載出的html內(nèi)容進(jìn)行安全驗證,所述安全驗證包括數(shù)據(jù)清除、標(biāo)簽過濾、屬性檢查、屬性值檢查、深度過濾、實體轉(zhuǎn)義處理、編碼處理、csp驗證中的至少一項;
25、其中,所述數(shù)據(jù)清除指的是接收輸入的html內(nèi)容,對html內(nèi)容進(jìn)行清洗,去除無關(guān)的空白字符和注釋;
26、所述標(biāo)簽過濾指的是遍歷數(shù)據(jù)清洗后的html內(nèi)容中的標(biāo)簽,將不在白名單中的標(biāo)簽刪除;
27、所述屬性檢查指的是在遍歷html內(nèi)容中的標(biāo)簽時,檢查在白名單中的標(biāo)簽的屬性是否在屬性列表中,如果所述屬性不在屬性列表中,則刪除屬性或者將該屬性的值替換為預(yù)設(shè)的安全值,如果所述屬性在屬性列表中,則對所述屬性進(jìn)行屬性值檢查;
28、所述屬性值檢查指的是對屬性值進(jìn)行url編碼或html實體編碼;
29、所述深度過濾指的是對通過屬性檢查和屬性值檢查的html內(nèi)容進(jìn)行惡意腳本過濾;
30、所述實體轉(zhuǎn)義處理指的是對經(jīng)過深度過濾的html內(nèi)容進(jìn)行html實體轉(zhuǎn)義;
31、所述編碼處理指的是采用安全框架對經(jīng)過實體轉(zhuǎn)義處理的html內(nèi)容進(jìn)行編碼;
32、所述csp驗證指的是在服務(wù)器端和客戶端實施內(nèi)容安全策略,根據(jù)內(nèi)容安全策略對經(jīng)過編碼處理的html內(nèi)容以及隨網(wǎng)頁加載的所有附帶資源進(jìn)行驗證。
33、可選地,所述基于所述規(guī)則集對所述內(nèi)容組件進(jìn)行樣式美化,生成帶有新樣式的html內(nèi)容,包括:
34、識別所述內(nèi)容組件中的所有內(nèi)容元素,對所述內(nèi)容元素進(jìn)行分類;
35、根據(jù)所述內(nèi)容元素的類型,從所述規(guī)則集中為所述內(nèi)容元素匹配對應(yīng)的樣式規(guī)則;
36、根據(jù)匹配出的樣式規(guī)則,在預(yù)設(shè)的樣式集中選擇出若干個樣式類;
37、采用模版引擎將所述內(nèi)容元素與所述若干個樣式類結(jié)合,生成帶有新樣式的內(nèi)容元素;
38、對所有帶有新樣式的內(nèi)容元素進(jìn)行web排版處理,生成所述帶有新樣式的html內(nèi)容。
39、可選地,所述對所述帶有新樣式的html內(nèi)容進(jìn)行動態(tài)組裝,生成目標(biāo)html文檔,將所述目標(biāo)html文檔展示在網(wǎng)頁中,包括:
40、采用預(yù)設(shè)的數(shù)據(jù)結(jié)構(gòu)存儲所述帶有新樣式的html內(nèi)容;
41、創(chuàng)建documentfragment對象,將所述數(shù)據(jù)結(jié)構(gòu)中的內(nèi)容元素添加到所述documentfragment對象中,生成目標(biāo)html文檔;
42、采用自適應(yīng)布局算法對所述目標(biāo)html文檔進(jìn)行布局調(diào)整;
43、將布局調(diào)整后的目標(biāo)html文檔展示在網(wǎng)頁中。
44、第二方面,本公開實施例還提供了一種自動化美化網(wǎng)頁內(nèi)容的系統(tǒng),采用如下技術(shù)方案:
45、數(shù)據(jù)提取模塊,用于從網(wǎng)頁中獲取html內(nèi)容,對所述html內(nèi)容進(jìn)行數(shù)據(jù)提取,獲得內(nèi)容組件,所述內(nèi)容組件包括純文本內(nèi)容和媒體元素中的至少一項;
46、樣式美化模塊,用于構(gòu)建包含多種樣式規(guī)則的規(guī)則集,基于所述規(guī)則集對所述內(nèi)容組件進(jìn)行樣式美化,生成帶有新樣式的html內(nèi)容;
47、動態(tài)組裝模塊,用于對所述帶有新樣式的html內(nèi)容進(jìn)行動態(tài)組裝,生成目標(biāo)html文檔,將所述目標(biāo)html文檔展示在網(wǎng)頁中。
48、第三方面,本公開實施例還提供了一種計算機(jī)裝置,采用如下技術(shù)方案:
49、所述計算機(jī)裝置包括:
50、至少一個處理器;以及,
51、與所述至少一個處理器通信連接的存儲器;其中,
52、所述存儲器存儲有可被所述至少一個處理器執(zhí)行的指令,所述指令被所述至少一個處理器執(zhí)行,以使所述至少一個處理器能夠執(zhí)行以上任一所述的自動化美化網(wǎng)頁內(nèi)容的方法。
53、第四方面,本公開實施例還提供了一種計算機(jī)可讀存儲介質(zhì),該計算機(jī)可讀存儲介質(zhì)存儲計算機(jī)指令,該計算機(jī)指令用于使計算機(jī)執(zhí)行以上任一所述的自動化美化網(wǎng)頁內(nèi)容的方法。
54、第五方面,本公開實施例還提供了一種計算機(jī)程序產(chǎn)品,包括計算機(jī)程序/指令,該計算機(jī)程序/指令被處理器執(zhí)行時實現(xiàn)以上任一項所述方法的步驟。
55、本公開實施例提供的自動化美化網(wǎng)頁內(nèi)容的方法,通過數(shù)據(jù)提取能夠自動清除html內(nèi)容的所有樣式,獲得內(nèi)容組件,通過提取網(wǎng)頁中的html內(nèi)容并應(yīng)用統(tǒng)一的樣式規(guī)則集,可以確保在不同平臺和應(yīng)用間復(fù)制的文本內(nèi)容保持一致的樣式,有效解決了不同平臺間樣式不一致的問題,使得文檔呈現(xiàn)更為整潔和專業(yè)。而且通過自動構(gòu)建和應(yīng)用樣式規(guī)則集,可以根據(jù)企業(yè)的統(tǒng)一樣式要求來美化內(nèi)容,確保ai生成的文章或網(wǎng)頁內(nèi)容符合企業(yè)的品牌形象和視覺風(fēng)格,這使得生成的文檔樣式不僅具備多樣性,還能與企業(yè)的標(biāo)準(zhǔn)要求保持一致,同時能夠消除手動重新應(yīng)用樣式的繁瑣步驟,大大提高了樣式統(tǒng)一性的維護(hù)效率,同時避免了人工操作可能帶來的錯誤和不一致。通過生成帶有新樣式的html內(nèi)容,并進(jìn)行動態(tài)組裝,最終生成的目標(biāo)html文檔在視覺上更為吸引人,用戶的閱讀體驗將得到顯著提升,文檔的樣式一致性和專業(yè)性將增強(qiáng)用戶的整體體驗。
56、上述說明僅是本公開技術(shù)方案的概述,為了能更清楚了解本公開的技術(shù)手段,而可依照說明書的內(nèi)容予以實施,并且為讓本公開的上述和其他目的、特征和優(yōu)點能夠更明顯易懂,以下特舉較佳實施例,并配合附圖,詳細(xì)說明如下。