Python学习 Day56 动态网页爬虫 01

Python学习 Day56 动态网页爬虫 01,第1张

概述动态网页爬虫一、相关概念1.动态网页在网页不重新加载的情况下,通过Ajax技术动态更新网站真难过的局部数据如王者荣耀的高清壁纸,在换页的过程当中,URL没有发生改变,但是壁纸动态的更改了2.Ajax(AsynchronouseJavaScriptAndXML)异步JavaScript和XML前端与服务器进行少量数 动态网页爬虫一、相关概念1.动态网页在网页不重新加载的情况下,通过AJAX技术动态更新网站真难过的局部数据如王者荣耀的高清壁纸,在换页的过程当中,URL没有发生改变,但是壁纸动态的更改了

2.AJAX(Asynchronouse JavaScript And XML)异步JavaScript和XML前端与服务器进行少量数据交换,AJAX可以使用网页实现异步更新这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新传统的网页,如果需要更新内容,必须重新加载整个网页页面。因为传统网页在传输数据格式方向时,使用的是XML语法而现在数据交互时通常使用的是JsON使用AJAX加载的数据,即使用了Js,将数据渲染到了浏览器中在右键–>查看网页源代码还是不能看到AJAX加载的数据,只能看到使用这个URL加载的HTML代码


打卡数据链接得到的数据是JsON数据格式


二、动态网页爬虫的解决方案

1.直接分析AJAX调用的接口(数据所在URL),然后通过代码请求这个接口

2.使用selenium+Chromediver模拟浏览器行为获取数据

方式优点缺点
分析接口直接请求数据,无需解析;代码量少,性能高分析接口较复杂,特别是一些通过Js混淆的接口,需要一定的Js知识;容易被监测到是爬虫
selenium直接模拟浏览器的行为,浏览器能请求到的,使用selenium也能请求到;爬虫更稳定代码量多,性能低

分析URL时,去掉其中的“Jsoncallback=XX”参数即可得到符合要求的JsON数据格式

总结

以上是内存溢出为你收集整理的Python学习 Day56 动态网页爬虫 01全部内容,希望文章能够帮你解决Python学习 Day56 动态网页爬虫 01所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1185734.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存