python爬虫实战经典案例,突破反爬!爬取短视频!

今天在爬取某梨短视频时,发现前端代码跟之前都不一样了。加入了很多的反爬措施。在此特意记录一下!

先来看一下最终执行结果:

爬虫重要的不是写代码,而是分析!分析它的网页请求!

爬虫的基本过程一般如下:

    1-发送请求

    2-获取响应

    3-解析并提取数据

    4-保存数据

1.分析翻页网页

11.首先我们进入某梨视频首页如下,今天准备爬取的排行榜中的视频:

1.2.点开排行榜网页我们先来简单分析一下,发现它默认显示10个视频。

1.3.点击‘加载更多’或者继续下拉它会继续添加10个视频。是不是可以简单理解为它是以10为步长的格式来显示视频的?

1.4.我们找到翻页功能对用的这个链接:

1.5.观察一下这个翻页链接:

https://www.pearvideo.com/popular_loading.jsp?reqType=1&categoryId=&start=10&sort=10&mrd=0.4643802437122859

发现它其中一个参数:start=10&sort=10

可以确认它是从第十条开始的,然后每页10条数据展示的方式显示的。

1.6.网页分析完成之后我们来进行编码:

1.7.可以看出,我们在翻页这一层已经成功的爬到数据了。

2.分析视频网页

2.1.接下来我们点开视频,然后F12找到当前视频的请求链接

https://www.pearvideo.com/videoStatus.jsp?contId=1707705&mrd=0.8367214711596567

2.2.然后我们使用该链接模拟网络请求看是否可以获取到我们想要的视频

{"resultCode":"5","resultMsg":"该文章已经下线!","systemTime": "1605792063821"}

可以看出这条路是不行的,但是视频是确实存在的,为什么会显示文章下线了呢?有没有想到被反爬了呢?

2.3.咱们继续分析网页:

我们可以在Elements中也可以发现一个视频链接:

https://video.pearvideo.com/mp4/adshort/20201118/cont-1707705-15490519_adpkg-ad_hd.mp4

2.4点开这条链接发现是可以成功播放和下载的,说明我们最终要获取的视频里链接就是这条:

但是这条链接通过上面网页分析是获取不到的,显示文章下线还记得吗?所以我们还需要继续分析。

2.5经过分析观察,我们在preview中发现一个MP4格式的视频播放链接,会不会是这个呢?

2.6.点开看一下发现是一条无效的链接。

2.7.现在通过网页分析出三条链接:

视频链接:     https://www.pearvideo.com/videoStatus.jsp?contId=1707705&mrd=0.8367214711596567网页可播放链接:https://video.pearvideo.com/mp4/adshort/20201118/cont-1707705-15490519_adpkg-ad_hd.mp4网页请求连接:https://video.pearvideo.com/mp4/adshort/20201118/1605832871738-15490519_adpkg-ad_hd.mp4

再来捋一下啊。

我们通过视频链接得到的是网页请求连接,也就是第三个。但是这个链接显示的是404。

嵌套在网页中可播放视频的真实链接是第二个,但是我们请求不到。

所以我们就要想法子通过第三个链接构造出类似于第二个的可播放链接。

先来观察一下他们之间不同之处:发现这两个视频链接不同之处就在于一个是时间戳,一个是video_id。也就是说我们只要将第三个链接的时间戳改成跟第二个一样的video_id即可成功播放该视频。但是video_id又是在第一个链接中,所以我们就要想办法通过造出这条第二条可播放视频的链接。

2.8.刚才通过翻页链接我们已经得到video_id和video_name了。

2.9现在我们需要用正则将其提取出来即可:

['1707591', '1707705', '1707750', '1707696', '1707630', '1707694', '1707710', '1707688', '1707716']

['女大学生自杀留遗书称遭系领导性骚扰:常被搂抱,让叫其爸爸', '外卖小哥大火中救出同行:即使自己被烧,也必须救人', '无锡城管回应文明城市落选后抓狗:落选暴露出弊端,加强管理', '延期2年交房每平还要涨价1500元,售楼处:不同意就按退房处理', '蛋壳公寓称仍可正常租房,律师支招蛋壳租客房东如何维权', '护士在副院长家楼顶自杀,父母拒收32万赔偿:他要求我们不发声', '幼儿园点名凭空多出1个娃,谁都不认识:亲妈首次送还送错地方', '痛惜!安徽2名蓝天救援队员潜水训练时遇难,一人捐出遗体', '四川眉山一水泥罐车与公交车追尾,致15人受伤,事发监控曝光', '爱马仕将建最大鳄鱼养殖场,5万只用来供应皮革和肉类产品']

2.10可以发现我们视频所需的video_id和video_name都已经被展示出来了

2.11接下来就是提取视频播放链接然后替换我们已经获取到video_id即可。还记得刚才的文章下线吗,就是被反爬了。加入我们的爬虫三件套。

2.12可以看出我们获取到视频播放链接,再不是刚才的文章下线提示了。但这个不是真正的地址。还需要用video_id进行对时间戳的替换

https://video.pearvideo.com/mp4/adshort/20201118/1605835214479-15490655_adpkg-ad_hd.mp4https://video.pearvideo.com/mp4/adshort/20201118/1605835231211-15490519_adpkg-ad_hd.mp4https://video.pearvideo.com/mp4/adshort/20201119/1605835236250-15490907_adpkg-ad_hd.mp4https://video.pearvideo.com/mp4/adshort/20201118/1605835241582-15490403_adpkg-ad_hd.mp4

2.13所以接下来我们要做的就是替换,我们用正则表达式来实现

2.14可以看到所有链接的时间戳都已经成功被video_id替换。接下来我们找一个真实的链接试一下看是否可以成功播放

2.15可以看到是没有任何问题的。

接下来我们需要将这些视频进行保存。

2.16现在视频已经被我们成功保存到指定位置了!

源码已经上传,需要的童鞋可以关注微信公众号'印象python'回复‘某梨视频

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 158,736评论 4 362
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,167评论 1 291
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 108,442评论 0 243
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 43,902评论 0 204
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,302评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,573评论 1 216
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,847评论 2 312
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,562评论 0 197
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,260评论 1 241
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,531评论 2 245
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,021评论 1 258
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,367评论 2 253
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,016评论 3 235
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,068评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,827评论 0 194
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,610评论 2 274
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,514评论 2 269

推荐阅读更多精彩内容