2010-08-26 35 views
5

Bất kỳ ý tưởng nào?
Tôi đã kiểm tra API Youtube không hỗ trợ tính năng này.
Có thể không?
Cách tải hình ảnh kênh Youtube qua tên người dùng?

Tôi cần tải trực tiếp hình thu nhỏ qua tên người dùng.
ví dụ:

Tôi có một tên người dùng tên là: communitychannel
và tôi muốn để có được những hình ảnh thu nhỏ sau:
http://i2.ytimg.com/vi/YVrqydZz3e4/default.jpg


Cảm ơn trả lời của bạn !!
Tôi biết tôi có thể truy xuất dữ liệu hình thu nhỏ bằng cách thực hiện việc này. Nhưng trường hợp là, tôi sẽ nhận được danh sách mục thuê bao thành viên của Youtube đầu tiên thông qua URL sau:

http://gdata.youtube.com/feeds/api/users/[USER_NAME]/subscriptions

Từ các tài liệu chính thức Youtube, nó chỉ ra rằng các dữ liệu phản ứng bao gồm thẻ. Nhưng tôi không bao giờ thấy nó ...

Nếu độ dài danh sách là 100, thì tôi cần gửi tổng số 101 yêu cầu để nhận dữ liệu hình thu nhỏ cho từng mục. Nhưng nó sẽ tiêu tốn quá nhiều băng thông mạng để làm điều đó.

Vì vậy, có cách nào khác để thực hiện yêu cầu không? Cảm ơn!! ;-)

Trả lời

5

Bạn có thể lấy hình ảnh người dùng bằng cách sử dụng một url như thế này:

Bạn có thể nhận được chỉ là tên người dùng và hình ảnh thu nhỏ của phụ một chuỗi truy vấn như được mô tả trong partial responses api: ?lĩnh vực = yt: username, phương tiện truyền thông: thumbnail

  • Bạn có thể nhận được câu trả lời ở định dạng json để sử dụng dễ dàng trong javascript bởi phụ: & alt = json-in-script dạng & = 5

  • Bạn cũng có thể chỉ định một callback để thực thi khi phản ứng đã nạp bởi phụ: & callback = showImage

url của bạn bây giờ trông như thế này:

http://gdata.youtube.com/feeds/api/users/communitychannel?fields=yt:username,media:thumbnail&alt=json-in-script&format=5&callback=showImage

Để sử dụng điều này trong một trang đặt nó trong một thẻ script như sau:

<script type='text/javascript' src="your_url"/> 

và gọi lại nên trông giống như sau:

function showImage(data) 
{ 
    var name= data.entry.yt$username.$t; 
    var url = data.entry.media$thumbnail.url; 
    $(document).append("<img src='"+ url +"'/>"); 
} 

Bạn phải đảm bảo rằng hàm gọi lại showImage được xác định trước khi bạn tải dữ liệu.

Tôi đã tạo ra một mẫu tải một thức ăn và những hình ảnh sử dụng here (Hãy chắc chắn rằng bạn thay đổi communitychannel tên người dùng của riêng bạn hoặc nó sẽ không làm việc)

Tôi không thể nhìn thấy một tốt hơn cách giảm băng thông của bạn bằng cách sử dụng api phản hồi một phần;

+0

Bất kỳ cách nào để có được phiên bản hình ảnh lớn hơn? –

Các vấn đề liên quan