您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Display Instagram icon with green dot on Amazon and Flipkart product pages based on data from Google Sheets
- // ==UserScript==
- // @name Product Availability Checker
- // @namespace http://tampermonkey.net/
- // @version 1.0
- // @description Display Instagram icon with green dot on Amazon and Flipkart product pages based on data from Google Sheets
- // @author Your Name
- // @license MIT
- // @match https://www.amazon.in/*
- // @match https://www.flipkart.com/*
- // @grant none
- // ==/UserScript==
- (function() {
- 'use strict';
- const googleApiKey = 'f9ef79943782659df6946a421bd6f67edf725395'; // Your Google API Key
- const spreadsheetId = '12n_Ze61eRoiqn6OFFp6hy5-4K85ecJiRQgX15d_l6YQ';
- const sheetName = 'mymart inventory - Sheet1';
- const instagramPageUrl = 'https://www.instagram.com/mym_mart/';
- // Function to fetch data from Google Sheets
- async function fetchDataFromGoogleSheets() {
- const url = `https://sheets.googleapis.com/v4/spreadsheets/${spreadsheetId}/values/${sheetName}?key=${googleApiKey}`;
- const response = await fetch(url);
- const data = await response.json();
- return data.values;
- }
- // Function to extract product name from Amazon or Flipkart page
- function extractProductName() {
- let productName = null;
- if (window.location.hostname === 'www.amazon.in') {
- // Logic to extract product name from Amazon page
- productName = document.querySelector('span#productTitle')?.textContent.trim();
- } else if (window.location.hostname === 'www.flipkart.com') {
- // Logic to extract product name from Flipkart page
- productName = document.querySelector('span[class="_35KyD6"]')?.textContent.trim();
- }
- return productName;
- }
- // Function to display Instagram icon with or without green dot
- function displayInstagramIcon(available) {
- let icon = document.getElementById('instagramIcon');
- if (!icon) {
- icon = document.createElement('a');
- icon.id = 'instagramIcon';
- icon.href = instagramPageUrl;
- icon.target = '_blank';
- icon.style.position = 'fixed';
- icon.style.bottom = '20px'; // Adjust position as needed
- icon.style.left = '20px'; // Adjust position as needed
- icon.style.zIndex = '9999';
- icon.style.display = 'block';
- icon.style.width = '50px';
- icon.style.height = '50px';
- icon.style.background = `url('https://cdn-icons-png.flaticon.com/512/174/174855.png') no-repeat center center`;
- icon.style.backgroundSize = 'contain';
- icon.style.borderRadius = '50%';
- icon.style.textDecoration = 'none';
- icon.style.color = 'white';
- icon.style.textAlign = 'center';
- icon.style.lineHeight = '50px';
- icon.style.fontWeight = 'bold';
- document.body.appendChild(icon);
- }
- if (available) {
- icon.style.backgroundColor = 'green';
- icon.textContent = '•'; // Green dot
- } else {
- icon.style.backgroundColor = 'transparent';
- icon.textContent = ''; // No dot
- }
- }
- // Main function to check product availability and display Instagram icon
- async function main() {
- const productTitle = extractProductName();
- if (!productTitle) return; // Exit if product title not found
- const data = await fetchDataFromGoogleSheets();
- for (const row of data) {
- const sheetProductTitle = row[0];
- const quantity = parseInt(row[1]);
- if (productTitle.toLowerCase().includes(sheetProductTitle.toLowerCase())) {
- // Display Instagram icon with or without green dot based on product availability
- displayInstagramIcon(quantity > 0);
- return;
- }
- }
- // If product not available or doesn't match criteria, display Instagram icon without dot
- displayInstagramIcon(false);
- }
- // Run the script
- main();
- })();