我有一个网站,我想在没有登录的情况下将视频上传到YouTube。可能吗?如果是,怎么办呢?
答案 0 :(得分:5)
为您网站的所有用户创建一个帐户并始终使用其凭据。如果没有用户帐户“负责”,您就无法上传视频。 @Pekka:请求原谅,不是为了获得许可? ;) Google至少有一个youtube API(包含上传功能和PHP示例):http://code.google.com/apis/youtube/2.0/developers_guide_php.html#Uploading_Videos
答案 1 :(得分:2)
如果没有登录,则无法将视频上传到YouTube。
也就是说,如果YouTube的条款和条件禁止使用登录进行自动上传,我也不会感到惊讶。
答案 2 :(得分:0)
如果没有zend客户端库,有一种方法可以做到这一点。它的核心PHP(PHP4)。
https://github.com/techie28/YouTubeUploadPHP
注意:现在不推荐使用AuthSub。有关详细信息,请参阅Google弃用政策。
修改强>
因为codershelpingcoders.com
现在指向godaddy的停放页面而原始链接zendtutorials.wordpress.com
有一篇空文章链接到codershelpingcoders.com
,我通过存档找到了原始文章:http://web.archive.org/web/20130123044500/http://codershelpingcoders.com/并试图在此答案中复制它的内容以供将来参考(注意:我不知道这些信息是否仍然有用)。
本教程介绍使用AuthSub的基于浏览器的直接上传技术。
AuthSub
是YouTube的授权模块,可让您的应用与YouTube进行互动,以达到特定目的,例如代表用户上传视频等。
它与Auth
和oAuth
的堂兄相同
用户将权限授予您的站点应用程序,您可以代表他完成这项工作。
我们将使用AuthSub
上传视频。
如下所示,可以通过以下4个简单步骤完成:
允许用户代表用户运行应用程序
首先授权。
因此,我们实施的第一步是获取用户授权的应用程序
我们只需将用户重定向到授权页面即可
如下:
$nextUrl = urlencode(‘http://www.xxxx.com’) $scope = urlencode(‘http://gdata.youtube.com’); https://www.google.com/accounts/AuthSubRequest?next=’.$nextUrl.’&scope=’.$scope.’&session=1&secure=0
这里的nextUrl
是您的应用程序所在用户的网址
将在授权程序后重定向
scope
是告诉YouTube有关谷歌流程的范围
在这种情况下数据youtube
因此,如果用户尚未授权您的应用,则必须将其重定向到
用户批准后,上述授权页面
你的应用程序不需要再次执行第一步,直到
除非用户撤消用户对您应用的访问权限
他的账户控制小组
成功完成授权过程后,用户将会
重定向到您的应用程序,这完成了第一步
的AuthSub。
如果从第一步开始,用户就会对您的应用进行身份验证
YouTube会使用网址中的令牌将其重定向回您的应用程序。
您将使用此令牌,这是实际的AuthSub过程
即将发挥作用,您将使用此令牌获取一个名为的实体
AuthSubSessionToken
,可让您将自己的应用与YouTube进行互动
代表刚刚批准您的申请的用户
在PHP中,您可以通过发出curl请求来完成。详情如下:
向https://www.google.com/accounts/AuthSubSessionToken
发出curl GET请求
使用您在授权步骤后收到的令牌
记得打开卷发的响应收集状态,因为你需要这样做
如果到目前为止一切顺利,你会得到YouTube的回复
AuthSubSessionToken
宾果: - )
现在,当您收到AuthSubSessionToken时,您将使用它 获取实际上传数据的上传令牌 与您的视频相关的YouTube即标题,说明,类别和 关键字。这是一个与您上传的AuthSub相反的过程 首先将与视频相关的数据发送到YouTube,然后上传视频 本身。视频数据的上传也称为MetaData 通过将XML提供给YouTube,xml将是:
title goes here description goes here category goes here Keyword goes here
再次curl有业务,您将通过发出另一个curl调用来上传:
url:http://gdata.youtube.com/action/GetUploadToken headers:AuthSub token=”Your AuthSubSession token goes here” GData-Version:2 ‘X-GData-Key: key=”Your Api key goes here” Content-length: length of the xml you formed above goes here Content-Type:application/atom+xml; charset=UTF-8 POSTFIELDS: the xml itself that you formed
如果步骤3成功完成,则上传时间
视频实际上是你成功的最后一次卷曲执行
在YouTube上以网址和令牌回复
现在,您将创建一个将此url作为其操作和令牌的表单
像这样的隐藏领域。
只需选择视频并点击提交,您的视频就会上传
成功提交后,您将被重定向回status 200
。
示例代码的github链接是here。