request得到和瀏覽器數據不同
數據加載是異步加載方式,原始頁面不包含數據,加載完后會會再向服務器請求某個接口獲取數據,然后數據再被處理才呈現到網頁上,這其實就是發送了一個 Ajax 請求。這樣Web 開發上可以做到前后端分離,而且降低服務器直接渲染頁面帶來的壓力。
因此遇到這種情況,用requests模擬ajax請求
6.1 Ajax
1- 介紹
Ajax,全稱為 Asynchronous JavaScript and XML,即異步的 JavaScript 和 XML。是利用 JavaScript 在保證頁面不被刷新、頁面鏈接不改變的情況下與服務器交換數據並更新部分網頁的技術。
實例:頁面刷新后加載
2- 基本原理
1)發送請求
新建了 XMLHttpRequest 對象,然后調用了onreadystatechange 屬性設置了監聽,然后調用 open() 和 send() 方法向服務器發送了一個請求,得到服務器返回響應,並解析
2)解析內容
得到響應之后,onreadystatechange 屬性對應的方法便會被觸發,此時利用 xmlhttp 的 responseText 屬性便可以取到響應的內容。HTML或者Json
3)渲染網頁
解析完響應內容之后,就可以調用 JavaScript 來針對解析完的內容對網頁進行下一步的處理了。DOM操作
原理,即需要知道請求如何發送、發往哪里,發了哪些參數
6.2 Ajax分析方法
1-查看請求
2-過濾請求
6.3 結果提取
1-分析請求
GET類型請求:type、value、containerid、page。
可以分析請求,推斷出參數的規律
2- 分析響應
待補充
