如何爬取豆瓣网热门视频的数据

自我介绍

先自我介绍一下吧,我是一个菜鸡,目前学习python差不多5个月了,主要侧重爬虫这一块,如果又讲的不好的或者没有说清楚的一些地方请谅解

工具

  • Python 3.x
  • Python IDE(我是用的是Pycharm,还是相当不错滴,社区版免费滴)
  • Requests模块(安装可以在IDE里面安装或者在cmd中用pip命令安装,)

起飞咯,嘟嘟嘟

一些小小的准备工作

工欲善其事必先利其器,python是个模块化的语言,想要做不同的事需要导入不同的模块,requests模块就是专门用来对网页进行请求的

  1. 在安装好了requests模块后准备工作算是做好了,开始!
  2. 众所周知,在Python中使用模块都要先在项目的开头导入模块`
import requests
  1. 找到存有数据Url,我们尝试一下直接对豆瓣网的网站发起请求看看有没有数据(一般大网站都会有加密措施,都是试试又不会怀孕)
import requests

url = 'https://movie.douban.com/explore#!type=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=0'

headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36',
}

res = reques![在这里插入图片描述](https://img-blog.csdnimg.cn/20210129210026154.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L20wXzUxODcxNzU0,size_16,color_FFFFFF,t_70#pic_center)
ts.get(url=url,headers=headers).text

print(res)

emmmmmmm,好家伙,返回得一点有用的数据都没有,全是一些网站声明和框架
(如果对上面的代码不清楚的话可以去看看我好久之前写的一篇Python爬虫爬取数据遇到的问题里面有介绍)

抓包

既然它网站没有直接把数据放在一个页面上,那没办法了,只能去抓包看看了
在浏览器里面按F12打开数据面板
在这里插入图片描述
可以看到服务器给我们发送了一些图片数据和一些奇奇怪怪的东西,图片不是重点,重点是数据哈

按下ctrl+F打开搜索框,随便找个电影的名字,大喊一声芝麻开门就能找到你需要的数据所在的包的位置了(有些网站的数据跟防贼一样,藏得贼深,每次要找半个多小时)

在这里插入图片描述
emmmmmm,很明显,这个网站很有自知之明啊,直接把自己的清白交出来了,这种字典格式的数据才是我们喜欢的数据,处理起来不麻烦,既然数据有了,我也懒得看下面那个包了,直接开始叭

在这里插入图片描述
Url跟请求方法才是我们所需要的东西,GET请求不用带参数,直接破门进去就冲就完事,POST要带参数,也就是钥匙,你没有钥匙还不让你进入,这就很烦

在这里插入图片描述
我们修改一下url,再次芝麻开门,随便看看,这的确是我们需要的数据

可能就有细心的同学看到了,在第9行的后缀的text换成了json(),这是因为text返回的数据是字符串类型,而json返回的是字典类型,当然是字典好处理数据呀

这个时候我们在浏览器中回到预览模式,这样字典就会更直观,清清楚楚

在这里插入图片描述
这样我们就让数据更加的直观了(要是还不清楚这个循环是干什么用的,把字典和列表的操作方法抄100遍,啊喂!!!)在这里插入图片描述
再次进行亿点处理,这不就简单明了了嘛。

冲完了,结束了

至于数据保存到txt的操作我就不赘述了,相信大家都会哦,下次讲讲怎么把数据保存到一个excel中叭,要是还有啥不会的可以+我扣扣:1691764044问我

彩蛋

本来上面就应该要结束了的,但是想了想,还是说一下,在网页中网址里面?和&的部分理论上都是可以去掉的,但是一般都是作为参数传给服务器

“https://movie.douban.com/j/search_subjectstype=movie&tag=%E7%83%AD%E9%97%A8&sort=recommend&page_limit=20&page_start=0”

在上面的这串的tag=的转码过来的意思是“热门”
可以猜猜page_limit和page_start的意思是什么和把里面的值修改会发生什么神奇的事情

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值