怎么直接下载niconico的视频文件 (伪)(利用curllib)

本文介绍了如何使用Python的curl库模拟浏览器行为,通过获取和使用cookies来下载niconico视频。关键在于获取nicosid和nicohistory,其中nicosid可以通过访问niconico首页获得,而nicohistory的获取较为复杂。此外,视频文件的URL需要通过POST请求特定页面获取,并需要user_session cookie,该cookie需要先通过账号密码登录niconico来获得。
摘要由CSDN通过智能技术生成

简单一句话说明就是: 浏览器跟niconico的交互无非get、post, 中间有通过ssh登录后cookie的添加, 浏览器执行nico页面上的javascript导致cookie的增加或修改, 查询(根据番号)和请求(GET)视频文件时需要带上特定的cookie才能请求成功。

那么哪些操作更改了cookie, 自定义的http请求又要怎么写才能把视频文件搞下来呢?  这些信息通过firebug清楚明了。

从结论往回推倒, 先看下载某个文件的GET请求里带上的cookie是这样:

Cookie nicosid=1376560121.1985494370; WT_FPC=id=183.1.222.67-2718089024.30316956:lv=1376563737475:ss=1376563716164; user_session=user_session_5876440_15212688[人工马赛克]029617; __utma=8292653.1210056190.1376560156.1376619137.1376619257.4; __utmz=8292653.1376560156.1.1.utmccn=(direct)|utmcsr=(direct)|utmcmd=(none); nicohistory=sm20892030%3A1376619147%3A1376619352%3Abfccbcfceb510b97%3A5%2Cnm14545546%3A1376618022%3A1376619352%3A71811917e7fba6e4%3A5%2Csm21596305%3A1376560377%3A1376560377%3A8b8813d10b48d5a0%3A1; optimizelySegments=%7B%22281621258%22%3A%22ff%22%2C%22280358707%22%3A%22false%22%2C%22281626694%22%3A%22direct%22%7D; optimizelyEndUserId=oeu1376560363326r0.5227189826598727; optimizelyBuckets=%7B%7D; __utmb=8292653; __utmc=8292653 Host smile-cln15.nicovideo.jp

实际测试其实只需要nicosidnicohistory这两个就足够了。  nicosid怎么获取? 访问niconico首页就会有nicosid写到cookie里。 nicohistory暂时不管。 另外一个假设的前提是我们已经知道视频文件的地址。 下面是代码:

#include <funct
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值