前端JS將文字替換成偽類標籤防爬蟲的乙個方法

2021-08-13 11:29:06 字數 1812 閱讀 4095

話不多說 思路就是

把重要的資訊轉換成偽類標籤 顯示出來 把原有的文字刪除

本來還擔心替換成偽類標籤後字型什麼的會改變 偽類標籤很好的繼承了樣式

上**但是呢 很遺憾 你還是要過介面 這個方法可以作為中轉 比如你和後端商量好規則 你傳送你生成的class 去取得要隱藏的對應得資料 然後再渲染出來 而不是通過乙個介面直接渲染出來

一開始我覺得這樣是可以防爬的 後來我自己爬了下 只靠前端的js修改是不行的 非同步直接返回資料爬你的介面 直接渲染的話js沒法影響 只能前後端一起配合混淆資料 來增加難度

/**@param  -- cls 當前要替換的標籤名  比如我要替換所有p 標籤下的 span 的字為偽類標籤 就是  createpseudoclass(  );

*/function

createpseudoclass

( option )

this.defaults =

this.result = $.extend( {}, this.defaults, option );

this.init();

}createpseudoclass.prototype = )(i)}},

// 獲取隨機英文

getenglish()

return result.join( '' );

},// 新增樣式表

addsheet: function

(), addrule: function

(sheet, newclass, $itemtext)' , 0);}}

demo圖 別嫌醜 嘿嘿

dom結構圖

生成的效果圖

可以看到 文字本替換成了偽類標籤 而且增加了兩個看起來是空的樣式表(我初始化了兩次方法)

還是把demo**貼出來吧 嘿嘿

防抓取title>

pstrong

style>

head>

class="red">1111p>

尚澤大都會 span>

class="123xx">168元strong>

p>

尚澤大都會1 span>

class="12xx3">18元strong>

p>

尚澤大都會2 span>

class="12xx3">14568元strong>

將乙個字串中的空格替換成「 」

請實現乙個函式,將乙個字串中的空格替換成 20 例如,當字串為 則經過替換之後的字串為。分析 先遍歷一次字串,得到空格個數,進而得到將空格轉換成 20後的串長度 每個空格替換為 20需要增加 2個字元,x個空格增加 2x個字元 然後從後向前依次對空格進行替換,非空格原樣拷貝。如果原串有足夠大的空間,...

將字串中連續的多個空格替換成乙個空格

一,問題描述 給定乙個字串,將字串中連續的多個空格替換成乙個空格。如 hello world i come from china hello world i come from china 二,思路 逐個字元掃瞄字串,遇到連續多個空格時,只新增第乙個空格。遇到非空格字元時,新增該字元。使用strin...

將字串中連續的多個空格替換成乙個空格

一,問題描述 給定乙個字串,將字串中連續的多個空格替換成乙個空格。如 hello world i come from china hello world i come from china 二,思路 逐個字元掃瞄字串,遇到連續多個空格時,只新增第乙個空格。遇到非空格字元時,新增該字元。使用strin...