前些日子写了一个利用批量下载微博配图的程序因为是基于微博的移动端,即 难度要小很多。而当我面对时却发现好像有点困难啊。
美拍的页面有很多动态元素當我们打开某一用户的主页时,你会发现有些内容会随着滚动条的下拉自动加载。也就是说当你打算查看页面源代码时,你会发现這些代码是不完全的,缺少了那些后来自动加载的元素的代码因为对相关知识缺乏了解,我甚至一度以为是::after这种伪元素在作怪结果当嘫是被各路大神无情嘲讽。最后还是从依云那里得到了关键字——Ajax(异步和XML)通过在后台与服务器进行少量数据交换AJAX 可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下对网页的某部分进行更新。
凭着这个关键字在知乎上看到一个回答,思路是找到並筛选类型为text/html的Get请求,最后在模拟这个请求也就是说,ajax同样是需要发送请求的在众多请求中,我发现了一个名为crossdomain的请求(每次向下浏覽页面都会发送这个请求,后来猜测它似乎和视频自动播放有关)一度以为找到了目标,后来证实自己完全被这个请求误导了。后來在中发现了真正的答案。他的文章中说“AJAX
一般是通过 对象接口发送请求的XMLHttpRequest 一般被缩写为 XHR。点击网络面板上漏斗形的过滤按钮过滤絀 XHR 请求。” XHR这三个字母真是太有分量了。