1岖妄、JavaScript
JavaScript 是網(wǎng)絡(luò)上最常用也是支持者最多的客戶端腳本語言型将。它可以收集 用戶的跟蹤數(shù)據(jù),不需要重載頁面直接提交表單,在頁面嵌入多媒體文件荐虐,甚至運(yùn)行網(wǎng)頁游戲七兜。
我們可以在網(wǎng)頁源代碼的<scripy>標(biāo)簽里看到,比如:
<script type="text/javascript" src="鏈接"></script>
2福扬、jQuery
jQuery 是一個(gè)十分常見的庫,70% 最流行的網(wǎng)站和約 30% 的其他網(wǎng)站都在使用腕铸。一個(gè)網(wǎng)站使用 jQuery 的特征,就是源代碼里包含了 jQuery 入口。
如果你在一個(gè)網(wǎng)站上看到了 jQuery铛碑,那么采集這個(gè)網(wǎng)站數(shù)據(jù)的時(shí)候要格外小心狠裹。jQuery 可 以動(dòng)態(tài)地創(chuàng)建 HTML 內(nèi)容,只有在 JavaScript 代碼執(zhí)行之后才會(huì)顯示。如果你用傳統(tǒng)的方 法采集頁面內(nèi)容,就只能獲得 JavaScript 代碼執(zhí)行之前頁面上的內(nèi)容汽烦。
<script type="text/javascript" src="js/jquery-1.11.1.min.js?v=201512181512"></script>
3涛菠、Ajax
我們與網(wǎng)站服務(wù)器通信的唯一方式,就是發(fā)出 HTTP 請(qǐng)求獲取新頁面刹缝。如果提交表單之后碗暗,或從服務(wù)器獲取信息之后,網(wǎng)站的頁面不需要重新刷新梢夯,那么你訪問的網(wǎng)站就在用Ajax 技術(shù)言疗。
4、DHTML
DHTML 是用客戶端語言改變頁面的 HTML 元素(HTML颂砸、CSS噪奄,或者二者皆 被改變)。比如頁面上的按鈕只有當(dāng)用戶移動(dòng)鼠標(biāo)之后才出現(xiàn),背景色可能每次點(diǎn)擊都會(huì)改變人乓,或者用一個(gè) Ajax 請(qǐng)求觸發(fā)頁面加載一段新內(nèi)容勤篮,網(wǎng)頁是否屬于DHTML,關(guān)鍵要看有沒有用 JavaScript 控制 HTML 和 CSS 元素色罚。
Python 解決這個(gè)問題只有兩種途徑:
(1) 直接從 JavaScript 代碼里采集內(nèi)容
(2) 用 Python 的 第三方庫運(yùn)行 JavaScript碰缔,直接采集你在瀏覽器里看到的頁面(這個(gè)比較好)。