您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
It shows global prices in amazon item page
当前为
// ==UserScript== // @name Amazon Global Price Comparator // @description It shows global prices in amazon item page // @match https://www.amazon.it/* // @match https://www.amazon.de/* // @match https://www.amazon.co.uk/* // @match https://www.amazon.fr/* // @match https://www.amazon.es/* // @match https://www.amazon.com/* // @version 1.5.3 // @author SH3LL // @grant GM_xmlhttpRequest // @namespace https://gf.qytechs.cn/users/762057 // ==/UserScript== function get_price(url,location) { return new Promise(function (resolve, reject) { GM_xmlhttpRequest({ method: 'GET', responseType: 'document', synchronous: false, url: url, onload: (resp) => { const doc = document.implementation.createHTMLDocument().documentElement; doc.innerHTML = resp.responseText; let price_block = doc.querySelector('#priceblock_ourprice'); // id prezzo normale //if(price_block === null) price_block = doc.querySelector('#apexPriceToPay').children[1] // nuova classe id del prezzo if(price_block === null) price_block = doc.querySelector('#priceblock_saleprice') // id prezzo scontato if(price_block === null) price_block = doc.querySelector('#priceblock_dealprice') // id prezzo offerta flash if(price_block === null) price_block = doc.querySelector('#priceblock_pospromoprice') // id prezzo offerta flash if(price_block === null){ // se c'è solo la scritta "nuovo e usato da" let etichette = doc.getElementsByTagName("span"); for(let el of etichette){ if( (/*location==="es" && */el.innerText.includes("Nuevos") && el.innerText.includes("desde") && !el.innerText.includes("€")) || (/*location==="it" && */el.innerText.includes("Nuovo") && el.innerText.includes("da") && !el.innerText.includes("€")) || (/*location==="fr" && */el.innerText.includes("Neufs") && el.innerText.includes("occasions") && !el.innerText.includes("€")) || (/*location==="de" && */el.innerText.includes("Neu") && el.innerText.includes("ab") && !el.innerText.includes("€")) || (/*location==="co.uk" && */el.innerText.includes("New") && el.innerText.includes("from") && !el.innerText.includes("£")) //(/*location==="us" && */el.innerText.includes("Nuevos") && el.innerText.includes("desde")) // USA non hanno il campo "Nuovo e usato da ..€" ) { price_block = el.nextSibling; break; } if( el.className.includes("a-text-price")){ price_block = el.firstChild; break; } } } if(price_block !== null && price_block !== undefined && price_block.innerText !== null && price_block.innerText !== undefined && price_block.innerText.trim()!== "") { resolve(price_block.innerText); } resolve("error"); } }); }); } async function main(){ if(window.location.href.includes("/dp/") || window.location.href.includes("/gp/product/") ){ let amz_code; //get amazon product code if(window.location.href.includes("/gp/product/") && window.location.href.includes("?") ){ amz_code=(window.location.href).split("?")[0].split('/gp/product/')[1]; }else if(window.location.href.includes("/gp/product/") && !window.location.href.includes("?")){ amz_code=(window.location.href).split('/gp/product/')[1]; }else if(window.location.href.includes("/dp/") && window.location.href.includes("?")){ amz_code=(window.location.href).split("?")[0].split('/dp/')[1].split('/')[0]; }else if(window.location.href.includes("/dp/") && !window.location.href.includes("?")){ amz_code=(window.location.href).split('/dp/')[1].split('/')[0]; } //let price_block = document.querySelector('#price'); //VECCHIO HOOK (che non esiste quando il prezzo è fuori stock) let price_block = document.querySelector('#desktop_unifiedPrice'); //HOOK if(price_block===null) price_block = document.querySelector('#productOverview_feature_div').children[0]; let tr1 = document.createElement("tr"); let div1 = document.createElement("div"); div1.style.position = "relative"; div1.style.left="100%"; let message1= document.createElement("label"); message1.innerText="⏳ Loading Prices... ⏳"; message1.style.color="firebrick"; tr1.append(div1); div1.append(message1); //price_block.children[0].children[0].append(tr1); //VECCHIO HOOK (che non esiste quando il prezzo è fuori stock) price_block.append(tr1); let locations = ["it","de","fr","es","co.uk","com"]; let flags = { "it":"🇮🇹", "de":"🇩🇪", "fr":"🇫🇷", "es":"🇪🇸", "co.uk":"🇬🇧", "com":"🇺🇸" }; let prices=[],link,min_price=999999999999999999999999999; for(let curr_location of locations){ let curr_price = await get_price("https://www.amazon."+curr_location+"/dp/"+amz_code , curr_location); console.log(curr_location+": price-> " + curr_price) if(curr_price!=="error"){ //get min price let cleaned_price=curr_price.replace(",","."); cleaned_price=cleaned_price.replace("$",""); cleaned_price=cleaned_price.replace("£",""); cleaned_price=cleaned_price.replace("€",""); cleaned_price=cleaned_price.trim();//remove spaces if(parseFloat(cleaned_price)<parseFloat(min_price)){min_price=cleaned_price} link= document.createElement("a"); link.innerText= "["+ flags[curr_location] + " " + curr_price.replace(".",",")+"]"; link.href="https://www.amazon."+curr_location+"/dp/"+amz_code; link.style.color="green"; link.style.paddingLeft = "5px"; link.style.paddingRight = "5px"; prices.push(link); }else{ link= document.createElement("a"); link.innerText= "["+ flags[curr_location] + " stock-out]"; link.href="https://www.amazon."+curr_location+"/dp/"+amz_code; link.style.color="black"; link.style.paddingLeft = "5px"; link.style.paddingRight = "5px"; //message.style.color="firebrick"; prices.push(link); } } //REMOVE LOADING //price_block.children[0].children[0].removeChild(price_block.children[0].children[0].lastElementChild); //VECCHIO HOOK (che non esiste quando il prezzo è fuori stock) price_block.removeChild(price_block.lastElementChild); let tr2 = document.createElement("tr"); let div2 = document.createElement("div"); tr2.append(div2); for(let curr_price_link of prices){ let cleaned_price=curr_price_link.innerText.replace("CO.UK",""); cleaned_price=cleaned_price.replace("🇮🇹",""); cleaned_price=cleaned_price.replace("🇩🇪",""); cleaned_price=cleaned_price.replace("🇫🇷",""); cleaned_price=cleaned_price.replace("🇪🇸",""); cleaned_price=cleaned_price.replace("🇬🇧",""); cleaned_price=cleaned_price.replace("🇺🇸",""); cleaned_price=cleaned_price.replace(",","."); cleaned_price=cleaned_price.replace("[",""); cleaned_price=cleaned_price.replace("]",""); cleaned_price=cleaned_price.replace("$",""); cleaned_price=cleaned_price.replace("£",""); cleaned_price=cleaned_price.replace("€",""); cleaned_price=cleaned_price.trim();//remove spaces if(cleaned_price===min_price){curr_price_link.style.color="red"} div2.append(curr_price_link); } price_block.append(tr2); } } main();
QingJ © 2025
镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址