豆瓣电影的链接如下: https://movie.douban.com/。
网页链接:https://movie.douban.com/tag/#/sort=U&range=0,10&tags=%E7%BE%8E%E5%9B%BD,%E7%A7%91%E5%B9%BB
Network
什么是【Network】呢?
【Network】是浏览器的开发者工具其中一个模块。
那为什么我们需要从Network中获取信息。
因为一些比较复杂的网站,关键信息都是在实时动态加载的,我们需要找到被隐藏的数据请求,才能继续进行下一步。
我们现在打开这个网页:https://movie.douban.com/tag/#/?sort=U&range=0,10&tags=%E7%BE%8E%E5%9B%BD,%E7%A7%91%E5%B9%BB
然后按下键盘上的F12键,打开开发者工具。
“”"
ALL:查看全部信息
XHR:一种不借助刷新网页即可传输数据的对象
JS和CSS:前端代码,负责发起请求和页面实现
Img:仅查看图片
Media:仅查看媒体文件
Font:字体
Document:第0个请求一般在这里仅查看图片
WS和Manifest:网络编程相关知识,无需了解
Other:其他
“”"
XHR
XHR:全称为XMLHttpRequest,用于与服务器交互数据,提供了在浏览器和服务器之间发送网络请求的能力,XHR是动态网页加载技术中的一个要素。
XHR会根据你不同的需求,给你发送不同的网页信息,比如这里我们选了美国科幻题材的电影。
这时点击XHR,如果页面还是没有任何信息,点击F5或Ctrl+R刷新即可。
为什么要刷新才会显示呢?这是因为开发者工具只有在打开的情况下,浏览器才会在内存中保存对应信息。
如果先打开了网页,但没有启动开发者工具,那么就不会有任何请求信息。
刷新之后,可以看到主界面中出现了一条新的信息。
点击后出现了一大堆信息,而其中很多信息都是用不上的。
先点击上方的【preview】:
这个功能,可以让我们看见通过【XHR】发送过来的所有数据。
现在,再点击【data】左边的三角按钮。
页面展现了我们之前向网页请求的所有美国科幻电影信息。
比如这一条:{directors: [“安东尼·罗素”, “乔·罗素”], rate: “8.5”, cover_x: 3000, star: “45”, title: “复仇者联盟4:终局之战”,…}。
是不是感觉很像Python中的【字典】呢?
你的想法没错,在Python中它就可以转换成【字典】格式的数据。
现在我们要想获取所有电影的名称,就可以根据键【title】来取值【“复仇者联盟4:终局之战”。】。