python爬虫 基于requests模块发起ajax的get请求实现解析

 更新时间:2019年08月20日 08:59:41   作者:minger_lcm  
这篇文章主要介绍了python爬虫 基于requests模块发起ajax的get请求实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

基于requests模块发起ajax的get请求

需求:爬取豆瓣电影分类排行榜 https://movie.douban.com/中的电影详情数据

用抓包工具捉取 使用ajax加载页面的请求

鼠标往下下滚轮拖动页面,会加载更多的电影信息,这个局部刷新是当前页面发起的ajax请求,

用抓包工具捉取页面刷新的ajax的get请求,捉取滚轮在最底部时候发起的请求

这个get请求是本次发起的请求的url

ajax的get请求携带参数

获取响应内容不再是页面数据,是json字符串,是通过异步请求获取的电影详情信息

start和limit参数 需要注意,改变这两个参数获取的电影详情不一样

import requests
import json
# 指定ajax-get请求的url(通过抓包进行获取)
url = 'https://movie.douban.com/j/chart/top_list?'
# 封装ajax的get请求携带的参数(从抓包工具中获取) 封装到字典
param = {
  'type': '13',
  'interval_id': '100:90',
  'action': '',
  'start': '20', # 从第20个电影开始获取详情
  'limit': '20', # 获取多少个电影详情
  # 改变这两个参数获取的电影详情不一样
}
# 定制请求头信息,相关的头信息必须封装在字典结构中
headers = {
  'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/66.0.3359.181 Safari/537.36',
}
# 发起ajax的get请求还是用get方法
response = requests.get(url=url,params=param,headers=headers)

# 获取响应内容:响应内容为json字符串
data = response.text
data = json.loads(data)
for data_dict in data:
  print(data_dict["rank"],data_dict["title"])

'''
芙蓉镇
沉静如海
淘金记
马戏团
情迷意乱
士兵之歌
战争与和平
怦然心动
大话西游之月光宝盒
罗马假日
音乐之声
一一
雨中曲
我爱你
莫娣
卡比利亚之夜
婚姻生活
本杰明·巴顿奇事
情书
春光乍泄
'''

从21个电影开始获取信息,总共获取20个电影详情信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • 解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题

    解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题

    这篇文章主要介绍了解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-06-06
  • Python的“二维”字典 (two-dimension dictionary)定义与实现方法

    Python的“二维”字典 (two-dimension dictionary)定义与实现方法

    这篇文章主要介绍了Python的“二维”字典 (two-dimension dictionary)定义与实现方法,结合实例形式分析了Python模拟实现类似二维数组形式的二维字典功能,需要的朋友可以参考下
    2016-04-04
  • python_opencv用线段画封闭矩形的实例

    python_opencv用线段画封闭矩形的实例

    今天小编就为大家分享一篇python_opencv用线段画封闭矩形的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-12-12
  • 全面了解python字符串和字典

    全面了解python字符串和字典

    下面小编就为大家带来一篇全面了解python字符串和字典。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • 理解深度学习之深度学习简介

    理解深度学习之深度学习简介

    这篇文章主要是关于深度学习的简介,对大家学习了解机器深度学习有一定的帮助,以后会持续更新本系列,希望能为大家带来一些收货,让我们一起来看看下面的文章吧
    2021-04-04
  • 20招让你的Python飞起来!

    20招让你的Python飞起来!

    20招让你的 Python飞起来!这篇文章主要为大家详细介绍了Python性能优化的20条建议,感兴趣的小伙伴们可以参考一下
    2016-09-09
  • 深入理解numpy中argmax的具体使用

    深入理解numpy中argmax的具体使用

    本文主要介绍了深入理解numpy中argmax的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-01-01
  • Python pip配置国内源的方法

    Python pip配置国内源的方法

    这篇文章主要介绍了Python pip配置国内源的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)

    在PyCharm中遇到pip安装 失败问题及解决方案(pip失效时的解决方案)

    这篇文章主要介绍了在PyCharm中遇到pip安装失败问题及解决方案(pip失效时的解决方案),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03
  • Python中unittest用法实例

    Python中unittest用法实例

    这篇文章主要介绍了Python中unittest用法,较为详细的讲述了unittest中相关函数的用法及完整实例,需要的朋友可以参考下
    2014-09-09

最新评论