fetch(`/search?q=$encodeURIComponent(query)`) .then(r => r.json()) .then(data => if (data.error) document.getElementById('results').innerText = "Error: " + data.error; return; const container = document.getElementById('results'); data.videos.forEach(v => const card = document.createElement('div'); card.className = 'video-card'; card.innerHTML = ` <img src="$v.thumb" alt="thumb"> <div> <strong>$v.title</strong><br> <small>Channel: $v.channel<br> Published: $new Date(v.published).toLocaleDateString()</small> </div>`; card.onclick = () => loadVideo(v.video_id); container.appendChild(card); ); ) .catch(err => document.getElementById('results').innerText = "Fetch error: " + err; );
results = [] for item in data.get("items", []): video_id = item["id"]["videoId"] snippet = item["snippet"] results.append( "video_id": video_id, "title": snippet["title"], "channel": snippet["channelTitle"], "thumb": snippet["thumbnails"]["medium"]["url"], "published": snippet["publishedAt"] ) return results havoc brother song tamil latest
def youtube_search(query, max_results=5): """Call YouTube Data API and return a list of dicts with video info.""" params = "part": "snippet", "q": query, "type": "video", "order": "date", # newest first "maxResults": max_results, "key": YOUTUBE_API_KEY, "regionCode": "IN", # focus on Indian region (Tamil content) "relevanceLanguage": "ta" # Tamil language bias resp = requests.get(YOUTUBE_SEARCH_URL, params=params) resp.raise_for_status() data = resp.json() fetch(`/search