[Python爬虫]使用Python爬取动态网页-豆瓣电影(JSON)

优采云 发布时间: 2022-05-26 14:08

  [Python爬虫]使用Python爬取动态网页-豆瓣电影(JSON)

  前文传送门:

  好久没更新Python相关的内容了,这个专题主要说的是Python在爬虫方面的应用,包括爬取和处理部分

  第二节我们介绍如何爬取动态网页

  动态网页指的是网页的内容通过js动态加载出来的

  我们可以直接使用一些开发者工具查看

  这里我采用谷歌浏览器的开发者工具

  开发环境

  操作系统:windows 10

  Python版本 :3.6

  爬取网页模块:requests

  分析网页模块:json

  模块安装

  pip3 install requests

  网页分析

  我们使用豆瓣电影的页面来开始分析

  #!type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=0

  由于是动态加载的我们这里无法直接通过get方法获取网页内容

  当我们点击加载更多时可以通过开发者工具Network选项中的XHR来获取动态加载的js

  

  打开获取到的连接

  %E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=20

  我们可以发现连接的规律,即page_limit和page_start

  

  可以看到打开的内容为json格式

  这里我们构造一个连接,让它从第一个电影开始,并显示100个

  %E7%83%AD%E9%97%A8&sort=recommend&page_limit=100&page_start=0

  对于JSON的解析我们可以先用一个在线的网站来查看

  

  这里可以看到包含了如下信息

  评分

  电影名称

  电影的豆瓣链接

  封面地址

  代码介绍

  这里逐行介绍代码

  1. import相关的模块

  import requests

  import json

  2. 使用request模块打开并获取网页内容

  r = requests.get(url,verify=False)

  content=r.content

  3. 使用json.load将json格式转换为python的字典格式

  这时就可以使用字典的相关方法来处理网页了

  result=json.loads(content)

  tvs=result['subjects']

  4. 获取相关信息并存入字典中

  

  执行结果

  我们可以选择将获取到的数据放入数据库中

  

  源码位置

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线