logo
Published on

アフィリエイトリンクを教えてくれるchrome拡張機能[JavaScriptソースコード]

Authors

chrome拡張機能作りました: Discover affiliate links - Chrome ウェブストア

アフィリエイトリンクを教えてくれるJavaScriptを書きました。

別にアフィリエイトに恨みはありませんが、報酬が高いからって、保険案件などを適当に紹介して、"超オススメです!"って言ってるのもどうなのかな、と思いまして。

とりあえず保険は大事です。入っておきましょう。→[リンク]

なんて文字列みたら、まぁ十中八九アフィリエイトリンクなわけでして。でも、アフィリエイトリンクじゃなかったら、ちょっと気になりますよね。 その人が本当にそれをおすすめしているのかもしれないですから。

chromeならリンクにマウスホバーすればURL見えることは見えるんですが、そうやって一個ずつ確認していくのが面倒な場合もありますから。

そういうときに、どうぞ。

a8.netの例

var i;

for (i = 0; i < document.getElementsByTagName('a').length; i++){
    var result = document.getElementsByTagName('a')[i].href;
    if (document.getElementsByTagName('a')[i].href.match(/px\.a8\.net/)==null ){
        } else {
            // console.log(document.getElementsByTagName('a')[i]) ;

            var linkinfo = document.createElement("span");
            linkinfo.id = "linkinfo";
            linkinfo.innerHTML = [
            'a8',
            ].join("");
            // document.getElementsByTagName('a')[27].appendChild(linkinfo);
            document.getElementsByTagName('a')[i].appendChild(linkinfo);

            var linkinfoStyle = document.createElement("style");
            linkinfoStyle.type = "text/css";
            linkinfoStyle.innerHTML = [
            "#linkinfo {",
            "    background-color: black;",
            "    color: white;",
            "}",
            ].join("");
            document.getElementsByTagName('a')[i].appendChild(linkinfoStyle);
        }
}

やってること: <a>タグのループで回して、.hrefにa8.netのドメインが含まれていれば、リンクの右側に文字列を挿入する。

主要ASP対応 アフィリエイトリンク発見ユーザースクリプト(tamper monkey) 対応:a8.net;afb;valuecommerce

// ==UserScript==
// @name         Discover affiliate links
// @namespace    http://tampermonkey.net/
// @version      0.1
// @description  try to take over the world!
// @author       https://yuis-programming.com
// @match        *://*/*
// @grant        none
// ==/UserScript==

var i;
var linkinfo;
var linkinfoStyle;
var result;

// a8.net
for (i = 0; i < document.getElementsByTagName('a').length; i++){
    result = document.getElementsByTagName('a')[i].href;
    if (document.getElementsByTagName('a')[i].href.match(/px\.a8\.net/)==null ){
        } else {
            // console.log(document.getElementsByTagName('a')[i]) ;

            linkinfo = document.createElement("span");
            linkinfo.id = "linkinfo";
            linkinfo.innerHTML = [
            'a8',
            ].join("");
            // document.getElementsByTagName('a')[27].appendChild(linkinfo);
            document.getElementsByTagName('a')[i].appendChild(linkinfo);

            linkinfoStyle = document.createElement("style");
            linkinfoStyle.type = "text/css";
            linkinfoStyle.innerHTML = [
            "#linkinfo {",
            "    background-color: black;",
            "    color: white;",
            "}",
            ].join("");
            document.getElementsByTagName('a')[i].appendChild(linkinfoStyle);
        }
}

// afb
for (i = 0; i < document.getElementsByTagName('a').length; i++){
    result = document.getElementsByTagName('a')[i].href;
    if (document.getElementsByTagName('a')[i].href.match(/affiliate-b\.com/)==null ){
        } else {
            // console.log(document.getElementsByTagName('a')[i]) ;

            linkinfo = document.createElement("span");
            linkinfo.id = "linkinfo";
            linkinfo.innerHTML = [
            'affiliate-b',
            ].join("");
            // document.getElementsByTagName('a')[27].appendChild(linkinfo);
            document.getElementsByTagName('a')[i].appendChild(linkinfo);

            linkinfoStyle = document.createElement("style");
            linkinfoStyle.type = "text/css";
            linkinfoStyle.innerHTML = [
            "#linkinfo {",
            "    background-color: black;",
            "    color: white;",
            "}",
            ].join("");
            document.getElementsByTagName('a')[i].appendChild(linkinfoStyle);
        }
}

// valuecommerce
for (i = 0; i < document.getElementsByTagName('a').length; i++){
    result = document.getElementsByTagName('a')[i].href;
    if (document.getElementsByTagName('a')[i].href.match(/valuecommerce\.com/)==null ){
        } else {
            // console.log(document.getElementsByTagName('a')[i]) ;

            linkinfo = document.createElement("span");
            linkinfo.id = "linkinfo";
            linkinfo.innerHTML = [
            'valuecommerce',
            ].join("");
            // document.getElementsByTagName('a')[27].appendChild(linkinfo);
            document.getElementsByTagName('a')[i].appendChild(linkinfo);

            linkinfoStyle = document.createElement("style");
            linkinfoStyle.type = "text/css";
            linkinfoStyle.innerHTML = [
            "#linkinfo {",
            "    background-color: black;",
            "    color: white;",
            "}",
            ].join("");
            document.getElementsByTagName('a')[i].appendChild(linkinfoStyle);
        }
}

やっぱJavaScriptは楽しいですね。