Javascript 用于jquery检查模式和获取HTML的正则表达式
我正在尝试为jquery编写一个正则表达式,以从youtube搜索结果中获取所有数据。它是一个chrome扩展,所以当你打开youtube时,它会集成到chrome浏览器中 我想在结果页面中获取当前视频的所有数据。当你检查元件时 但是我必须在jquery中编写一些东西来获取结果页面上所有视频的所有值。谁能帮忙吗 我希望我的问题是清楚的Javascript 用于jquery检查模式和获取HTML的正则表达式,javascript,jquery,regex,Javascript,Jquery,Regex,我正在尝试为jquery编写一个正则表达式,以从youtube搜索结果中获取所有数据。它是一个chrome扩展,所以当你打开youtube时,它会集成到chrome浏览器中 我想在结果页面中获取当前视频的所有数据。当你检查元件时 但是我必须在jquery中编写一些东西来获取结果页面上所有视频的所有值。谁能帮忙吗 我希望我的问题是清楚的 谢谢这就是我解决问题的方法,如果以后有人能用上的话 //Function to fetch the YouTube Id, Video Id, Title and
谢谢这就是我解决问题的方法,如果以后有人能用上的话
//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');
//获取YouTube Id、视频Id、标题和视图的函数
函数getDom(类名){
if(className='.yt锁定署名'| | className=='.yt锁定标题'){
var items=$(className).find('a');
}else if(className='.yt锁定元信息'){
var items=$(className).find('li');
}
变量长度=items.length;
var位置=-1;
var obj_b=next();
函数next(){
位置=(位置+1<长度)?位置+1:0;
返回项目.eq(位置);
}
if(className='.yt锁定署名'){
$.each(对象、函数(){
var str_result=this.attributes[2].nodeValue;
log(“YouTube ID:-”+stru结果);
});
}else if(className='.yt锁定元信息'){
$.each(对象、函数(){
var str_result=this.innerHTML;
日志(“视图:-”+stru结果);
});
}else if(className='.yt锁定标题'){
$.each(对象、函数(){
var str_result=this.attributes[3].nodeValue;
var str_video_id=this.attributes[0].nodeValue;
log(“YouTube标题:-”+stru结果);
log(“YouTube视频ID:-”+str_视频ID);
});
}
}
//用于获取YotuTube Id
getDom(“.yt锁定署名”);
//用于获取视图和发布日期
getDom('.yt锁定元信息');
//用于获取标题和视频id
getDom('.yt锁定标题');
首先,解析HTML并遍历它。其次,更重要的是,我不相信这是可能的,因为您可能会被同一来源阻止检索YT页面的HTMLPolicy@RoryMcCrossan感谢您的链接帮助了解了一些事情,我确实解决了问题。:)