Python3网络爬虫教程10——ajax异步请求(爬取豆瓣电影数据 )

上接:
Python3网络爬虫教程9——有道在线翻译项目(破解JS加密过程)
https://blog.csdn.net/u011318077/article/details/86592160

7. ajax异步请求

  • 异步请求

  • 一定会有url,请求方法,可能有数据

  • 一般使用json格式

  • 豆瓣排行榜-剧情:https://movie.douban.com/typerank?type_name=剧情&type=11&interval_id=100:90&action=

  • 该网页向下拉动,一直拉不完,会自动请求,更新页面,就是使用了ajax请求

    • 打开上面网页,然后滚动,检查页面,观察每次向下滚动的变化,发现,每次向下滚动
    • 会出来一个新的请求网址,同时每次更新的图片也在20张,
    • 参考图片43_20.png
    • 拿出其中两个请求URL进行比较分析

    https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start=20&limit=20
    https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start=40&limit=20

      https://movie.douban.com/j/chart/top_list?
      电影类型剧情:type=11&
      评分区间好于100%到90%的影片:interval_id=100%3A90&
      这个不管:action=&
      从第四十部开始:start=40&
      每次刷新限制为20部,下面对应20张图片请求:limit=20
    
  • 案例43_20,爬取豆瓣电影数据

# 爬取豆瓣电影
# 了解ajax请求(向下滚动网页,网页自动不停的更新)

import json
from urllib import request

if __name__ == '__main__':

    url = 'https://movie.douban.com/j/chart/top_list?type=11&interval_id=100%3A90&action=&start=40&limit=20'

    rsp = request.urlopen(url)

    # 读取网页数据,一般为json格式, 直接读取到的是bytes格式,解码后是一个str字符串格式
    data = rsp.read().decode()
    print(type(data))

    # json格式进行解码为python格式,发现是一个list
    data = json.loads(data)
    print(type(data))

    print(data)

下接:
Python3网络爬虫教程11——Requests包(HTTP for Humans)
https://blog.csdn.net/u011318077/article/details/86633261

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值