Php 找到我的所有视频并将其删除youtube api
我使用PHPCURL上传视频,效果非常好。 当我试图删除一段视频时,我总是会遇到这样的问题: 此URL不支持Http方法删除-错误405Php 找到我的所有视频并将其删除youtube api,php,youtube,youtube-api,Php,Youtube,Youtube Api,我使用PHPCURL上传视频,效果非常好。 当我试图删除一段视频时,我总是会遇到这样的问题: 此URL不支持Http方法删除-错误405 $headers = array("Authorization: GoogleLogin auth=".$authvalue, "GData-Version: 2", "Content-Type: application/atom+xml; charset=UTF-8", "DELE
$headers = array("Authorization: GoogleLogin auth=".$authvalue,
"GData-Version: 2",
"Content-Type: application/atom+xml; charset=UTF-8",
"DELETE /feeds/api/users/".$username."/uploads/".$videoid." HTTP/1.1");
$curl = curl_init("http://gdata.youtube.com");
curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_POST, 0);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "DELETE");
curl_setopt($curl, CURLOPT_REFERER, true);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_HEADER, 0);
$b = curl_exec($curl);
首先,您需要一个youtube ID列表,用于给定帐户的每个上传视频
"https://www.googleapis.com/youtube/v3/channels"
带标题:
"Content-type": "application/json",
"Authorization": "Bearer %s" % {YOUR ACCESS TOKEN}
和参数:
"part": "contentDetails",
"mine": "true",
"key": {YOUR APPLICATION KEY}
"part": "snippet",
"maxResults": {MAX 50 -- PAGINATION IS NEEDED},
"playlistId": {FROM ABOVE},
"key": {YOUR API KEY}
从要访问的响应中:
响应_body[“items”][0][contentDetails][relatedPlaylists][上传]"https://www.googleapis.com/youtube/v3/playlistItems"
发送标题:
"Content-type": "application/json",
"Authorization": "Bearer %s" % {YOUR AUTH TOKEN}
和参数:
"part": "contentDetails",
"mine": "true",
"key": {YOUR APPLICATION KEY}
"part": "snippet",
"maxResults": {MAX 50 -- PAGINATION IS NEEDED},
"playlistId": {FROM ABOVE},
"key": {YOUR API KEY}
您希望从此解析出响应_body[“items”](i)
每个项目和存储youtube id字段:
response_body["items][i]["snippet"]["resourceId"]["videoId"]
如果响应中包含response_body[“nextPageToken”],则需要使用参数“pageToken”:{NEXT PAGE TOKEN}重新发送请求,以获取其余分页结果"https://www.googleapis.com/youtube/v3/videos"
发送2个标题:
"Content-type": "application/json",
"Authorization": "Bearer %s" % {YOUR VALID ACCESS TOKEN}
发送1个参数:
"id": {THE YOUTUBE ID FOR THE VIDEO}
如果成功,您应该删除204或找不到404
如果收到500、502、503、504响应,则应重试
请求(在短暂等待后)lol从什么时候开始有人想删除他们所有的视频?顺便说一句,你检查过文档了吗?嗯,我有一个脚本,里面有一个错误,所以我必须删除所有1500个视频。并且不会手动执行此操作。:)有100个不同的账户。是的,我有,但只有ZEND的例子,我没有使用ZEND,但是使用curl。你可以根据文档发送HTTP delete头来删除视频。