requests模块的常用方法,request模板

  requests模块的常用方法,request模板

  请求模块实战04-爬豆瓣电影列表:爬豆瓣指定的电影类型列表

  本案主要参考豆瓣网站推荐的电影,通过python抓取指定类型电影列表上的电影信息。

  需求分析:通过对网页的分析,当我们滚动页面时,对应的电影信息会根据评分不断刷新。类似于之前的百度翻译,我们会发现有一个局部刷新的概念,就是ajax的应用。

  获取爬豆瓣电影ajax的排名信息请求局部刷新。

  通过开发者模式可以发现,每次滚动刷新获取电影信息时,都会启动一个ajax请求包,这个请求包可以通过特定的参数获取。而且信息也是以json的形式传输的。

  代码实现:# -*-编码:utf-8

  # @时间:2020/12/13 22:37

  # @作者:ZYX

  # @File:请求实战豆瓣电影分类列表. py

  # @软件:PyCharm

  导入请求

  导入json

  if __name__==__main__ :

  # UA迷彩

  标题={

  用户代理: Mozilla/5.0(Windows NT 10.0;WOW64) AppleWebKit/537.36 (KHTML,像壁虎一样)Chrome/70 . 0 . 3538 . 25 Safari/537.36 Core/1 . 70 . 3776 . 400 QQ browser/10 . 6 . 4212 . 400

  }

  #指定url

  URL= https://movie . douban . com/j/chart/top _ list?

  #设置加工参数

  param={

  类型: 17 ,

  interval_id: 100:90 ,

  动作“:”,

  Start: 0 ,#从数据库中获取电影的起点

  Limit: 20 ,#要提取的一个请求的限制数量。

  }

  #发送请求

  response=requests.get(url=url,params=param,headers=headers)

  #获取响应数据

  list_data=response.json()

  #结果持久性

  文件路径=。/data/douBan.json

  使用open(filePath, w ,encoding=utf-8 )作为fp:

  json.dump(list_data,fp=fp,确保_ascii=False)

  打印( douBan.json保存成功,抓取过程已完成!)结果显示:

  分析:url参数处理

  对于这里的参数,我们把它们写成dead,可以通过传入参数动态指定电影类型抓取。优化代码如下:#设置加工参数

  Type=input(请输入电影类型号:)

  Start=input(请输入已爬网电影的开始位置:)

  Limit=input(请输入已爬网电影信息的数量:)

  param={

  类型:类型,#电影类型

  interval_id: 100:90 ,

  动作“:”,

   Start: start,#从数据库中获取电影的起始点

   Limit: limit,#一次获取的限制数。

  }

  #发送请求

  response=requests.get(url=url,params=param,headers=headers)

  这里我们将参数设置为传入实参的形式,类型号为13(爱情),要抓取的电影号为2,信息号为2,即抓取了两条电影信息。通过分析爬取的文件,可以得出start参数的值从0开始,类似于数组索引。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: