Tôi đang sử dụng API dữ liệu Youtube và tôi cần biết liệu có bất kỳ cách nào tìm thấy kênh youtube là kênh được xác minh hay không.Có trường nào để biết liệu kênh youtube có được xác minh từ API Youtube không?
Trả lời
chỉ chạy vào ngày hôm nay, và trong khi channelBranding of the V3 youtube API sẽ hứa hẹn, tôi không thể làm cho nó trở lại nếu tài khoản/kênh sử dụng id đã được xác nhận hoặc không
vì vậy tôi đã ném lên một kịch bản php khá què mà sử dụng mô hình DOM tìm kiếm để kiểm tra trực tiếp html. để trả về true nếu có phần tử sau.
<a href="//support.google.com/youtube/bin/answer.py?answer=3046484&hl=en" class="qualified-channel-title-badge" target="_blank">
Tính đến hôm nay (2014/09/08) một người sử dụng xác nhận sẽ trở lại đúng ..
<?php
function isVerified($youtubeUser)
{
$youtubeUser = trim($youtubeUser);
$url = '\''."https://www.youtube.com/user/".$youtubeUser.'\'';
$url = "https://www.youtube.com/user/".$youtubeUser ;
$Verified = false;
echo "<BR>looking at $url ";
$ch = curl_init();
$timeout = 10;
curl_setopt($ch, CURLOPT_URL, "$url");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$html = curl_exec($ch);
curl_close($ch);
$dom = new DOMDocument;
@$dom->loadHTML($html);
foreach ($dom->getElementsByTagName('a') as $link) {
$myVar = $link->getAttribute('class');
$search = "qualified-channel-title-badge";
$found=false;
$found = strpos($myVar, $search);
if ($found !== false) {
$Verified = true; //echo "<BR><font color=green>TRUE</font>";
} else {
$Verified = false; //echo "<BR><font color=red>FALSE</font>";
}
}
if ($Verified) {
return true;
} else {
return false;
}
}
?>
Bye cho bây giờ!
Nếu có thể kiểm tra suy ra trạng thái đã xác minh của kênh youtube thông qua cờ status.longUploadsStatus được cho phép hoặc đủ điều kiện, vì hiện tại tính năng này yêu cầu tài khoản youtube được liên kết phải được xác minh.
nguồn: https://developers.google.com/youtube/v3/docs/channels
Một giải pháp thích hợp, bạn cần phải làm điều này trong hai bước:
Bước 1, Sử dụng v3 API dữ liệu YouTube và ressource channel.list
với các thông số:
part:contentDetails
id:CHANNEL_ID // or forUsername:USERNAME
Đây là đầu ra:
{
"kind": "youtube#channel",
"etag": "\"CuSCwMPVmgi8taDtE2LV6HdgkN0/Mu0u2QSDqnFcBvUF5X21CnGSEac\"",
"id": "UCa10nxShhzNrCE1o2ZOPztg",
"contentDetails": {
"relatedPlaylists": {
"uploads": "UUa10nxShhzNrCE1o2ZOPztg"
},
"googlePlusUserId": "105350456099841048474"
}
}
.210
thêm tại: https://developers.google.com/youtube/v3/docs/channels/list
BƯỚC 2 với các API Google Plus, có googlePlusUserId
từ yêu cầu trước và sử dụng tài nguyên plus.people.get
với tham số:
userId:105350456099841048474
Kết quả sẽ hiển thị:
"isPlusUser": true,
"plusOneCount": 215098,
"circledByCount": 12621,
"verified": true,
Trường được xác minh là những gì bạn muốn!
thêm: https://developers.google.com/+/web/api/rest/latest/people/get
Trường googlePlusUserId đã không được chấp nhận và bị xóa và không còn có sẵn trong đối tượng contentDetails nữa. – cheino
RE: giải pháp mpgn của, lưu ý rằng có một sự phân biệt giữa cho dù tài khoản G + được xác minh và liệu một hoặc nhiều tài khoản kênh YouTube được xác minh. Có thể một tài khoản có nhiều kênh và mỗi kênh trong số đó được xác minh độc lập và kênh không được xác minh mặc dù tài khoản G + được liên kết được xác minh.
Như @ Paul Blakely cho thấy, cách tốt nhất hiện nay để làm điều này là để kiểm tra cờ status.longUploadStatus, mỗi https://developers.google.com/youtube/v3/docs/channels
Mở kênh xác minh, lớp "có-huy hiệu" là hiện tại.
làm việc vào năm 2018:
<?php
$key = 'has-badge';
$channel = file_get_contents('https://www.youtube.com/...');
if(stripos($channel, $key) !== FALSE)
echo "Verified";
else
echo "Not Verified";
?>
- 1. Cách nhận chi tiết kênh Youtube bằng API dữ liệu Youtube nếu kênh có url tùy chỉnh
- 2. YouTube Api v3 - video kênh chủ đề
- 3. Tải lên YouTube v3 API lên kênh
- 4. Android Youtube API có sẵn?
- 5. Youtube api phần chưa biết thống kê
- 6. API YouTube để tải lên Kênh doanh nghiệp
- 7. API Google: Tìm kênh YouTube của người dùng
- 8. Xác thực API Youtube - Iphone
- 9. Tìm quốc gia của kênh trong youtube api v3
- 10. PHP - Nhận ID kênh sau OAuth - YouTube API
- 11. Tạm dừng video youtube, youtube api
- 12. mẫu RegEx để có được ID video trên YouTube từ bất kỳ URL YouTube
- 13. Số người đăng ký Youtube với Dữ liệu Youtube Api V3
- 14. Không thể xóa video bằng API dữ liệu Youtube
- 15. Cách tải lên kênh YouTube cụ thể của cùng một tài khoản? (API dữ liệu của YouTube)
- 16. javascript/youtube api - biến YT không được xác định
- 17. Lỗi API Youtube v3 - 'Không có bộ lọc nào được chọn'
- 18. API YouTube - không bắn 'onYouTubePlayerReady()'
- 19. ontimeupdate với API YouTube
- 20. Có thể sử dụng modestbranding với youtube-api không?
- 21. Nhúng video youtube không có liên kết youtube
- 22. API YouTube xuất hiện không còn có sẵn
- 23. Bật kiếm tiền trên video trên YouTube bằng API YouTube
- 24. Cách tải hình ảnh kênh Youtube qua tên người dùng?
- 25. Có API YouTube RESTful dành cho iOS không?
- 26. Google/Youtube Api (v3) - xác minh chủ sở hữu của một video
- 27. Giới hạn API dữ liệu YouTube?
- 28. Nhận tất cả id danh sách phát từ id kênh - youtube api v3
- 29. Youtube API Data V3 - Không video url
- 30. Android YouTube api v3 - hướng
này không còn làm việc. Sử dụng channel.list API yêu cầu phần trạng thái, tôi truy vấn kênh hiển thị huy hiệu đã được xác minh trên trang web YouTube, tuy nhiên giá trị được API trả về cho cờ longUploadsStatus là "longUploadsUnspecified" không đúng. – cheino
nó trả về phản hồi "longUploadsUnspecified" khi yêu cầu không được ủy quyền đúng cách. (bạn cần một mã thông báo được chủ sở hữu kênh xác thực). –
Tôi đang xác thực bằng mã thông báo trong phương pháp set.Channels.List setKey của YouTube, nhưng nếu mã thông báo cần được ủy quyền cho kênh cụ thể, nó sẽ đánh bại mục đích xác định kênh đã xác minh trong kết quả tìm kiếm chung. FYI, tôi đang sử dụng API Java. – cheino