我正在尝试为jquery编写一个正则表达式来从youtube搜索结果中获取所有数据。这是一个chrome扩展程序,所以当你打开youtube时它被集成到chrome浏览器 https://www.youtube.com/results?search_query=american+idol 我想在结果页面中获取当前视频的所有数据。检查元素时。
但是我必须在jquery中写一些内容来获取结果页面上所有视频的所有值。任何人都可以帮忙。
我希望我的问题很明确。
由于
答案 0 :(得分:0)
这就是我解决它的方式,如果以后能为别人派上用场的话。
//Function to fetch the YouTube Id, Video Id, Title and Views
function getDom(className) {
if(className == '.yt-lockup-byline' || className == '.yt-lockup-title') {
var items = $(className).find('a');
} else if(className == '.yt-lockup-meta-info') {
var items = $(className).find('li');
}
var length = items.length;
var position = -1;
var obj_b = next();
function next() {
position = (position + 1 < length) ? position + 1 : 0;
return items.eq(position);
}
if (className == '.yt-lockup-byline') {
$.each(obj_b.prevObject, function() {
var str_result = this.attributes[2].nodeValue;
console.log("YouTube ID :- "+str_result);
});
} else if (className == '.yt-lockup-meta-info') {
$.each(obj_b.prevObject, function() {
var str_result = this.innerHTML;
console.log("Views :- "+str_result);
});
} else if (className == '.yt-lockup-title') {
$.each(obj_b.prevObject, function() {
var str_result = this.attributes[3].nodeValue;
var str_video_id = this.attributes[0].nodeValue;
console.log("YouTube Title :- "+str_result);
console.log("YouTube Video ID :- "+str_video_id);
});
}
}
//For fetching YotuTube Id
getDom('.yt-lockup-byline');
//For fetching views and release date
getDom('.yt-lockup-meta-info');
//For fetching title and video id
getDom('.yt-lockup-title');