网页css js 抓取助手(如何自定义一个chrome?最简单的chromeextend?)
优采云 发布时间: 2022-02-09 14:16网页css js 抓取助手(如何自定义一个chrome?最简单的chromeextend?)
如何自定义 chrome 扩展?
最简单的chrome extend由两个文件组成,一个是配置文件mainfest.json,另一个是运行js文件,在mainfest.js中有介绍。那么在chrome浏览器中引入插件的流程是:设置-扩展,然后点击“加载解压扩展”,选择已经编写好的程序,然后打开京东触发扩展。
下面是我写的操作京东的配置文件代码manifest.json:
{
"name": "jd-extends",
"manifest_version": 2,
"version": "1.0",
"description": "access www.jd.com,search goods.",
"browser_action": {
// "default_icon": "1.png"
"default_popup": "index.html"
},
"permissions": [
"tabs", "http://*/*","https://*/*"
],
"content_scripts": [
{
"matches": ["https://www.jd.com/*","https://search.jd.com/*","https://item.jd.com/*"],
"js": ["jquery.min.js","javascript.js"]
}
]
}
它主要是变量“content_scripts”。需要匹配的网页卸载匹配后,将操作该网页的js写入js文件并导入。可以导入多个网页和js。
如何使用JavaScript操作京东网页?
javascript.js 文件的代码
// var cycleNumber = $(".cycle-number").val();
if(window.location.host == "www.jd.com"){
// alert(cycleNumber);
clearCookie();
setInterval(function(){
if(Date.now()>=new Date("2016-10-23 01:04:00")){
// document.getElementById("key").value("韩版女装");
$("#key").val("韩版女装");
$("#key").parent().find("button").click();
}
},10)
}
if(window.location.host == "search.jd.com"){
$("#J_goodsList").find("li").find("img")[0].click();
// setTimeout("window.close()",12000)
}
if(window.location.host == "item.jd.com"){
if($(document).scrollTop() + $(window).height() < $(document).height()){
setInterval("moveScroll()",800);
}
setTimeout("closeChrome()",10000);
}
//the scroll move
function moveScroll(){
var h = $(document).height()-$(window).height();
$(document).scrollTop(h);
}
//close chrome
function closeChrome(){
clearCookie();
window.close();
}
//delete all cookie
function clearCookie(){
var keys=document.cookie.match(/[^ =;]+(?=\=)/g);
if (keys) {
for (var i = keys.length; i--;)
document.cookie=keys[i]+'=0;expires=' + new Date( 0).toUTCString()
}
}
以上操作流程主要是:在京东首页搜索“韩版女装”,然后点击搜索()跳转浏览搜索结果(),然后输入第一个搜索结果,然后浏览页面到底部,然后在关闭 page() 后停留 10000ms。因为操作了三个页面,所以每个页面在操作前都要进行相应的判断,否则会报错说找不到元素。