nishino_ameblo_easy

    @@ -54,6 +54,11 @@ result3.snapshotItem(k).classList.add("div_last"); } //a/img処理 +var result20 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//a[./img or ./amp-img]/ancestor::*[not(self::td)][./ancestor::div[@class="skin-entryBody" or @class="entry-text"]]', document, null, 7, null); +for (var w = 0; w < result20.snapshotLength; w++) { + result20.snapshotItem(w).classList.add("anc_img"); +} +$('.anc_img').contents().unwrap(); var result15 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]/a[./img or ./amp-img]', document, null, 7, null); for (var g = 0; g < result15.snapshotLength; g++) { result15.snapshotItem(g).classList.add("a_img");
  • // ==UserScript==
    // @title        nishino_ameblo_easy
    // @name         nishino_ameblo_easy
    // @namespace    http://tampermonkey.net/
    // @version      0.1
    // @description  try to take over the world!
    // @author       You
    // @match        https://ameblo.jp/nishino-akihiro/*
    // @match        https://gamp.ameblo.jp/nishino-akihiro/*
    // @grant        none
    // @require      http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
    // ==/UserScript==
    var result = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//br/ancestor::*[./ancestor::div[@class="skin-entryBody" or @class="entry-text"] and not(self::a) and not(self::font)]', document, null, 7, null);
    for (var i = 0; i < result.snapshotLength; i++) {
      result.snapshotItem(i).classList.add("anc");
    }
    var result2 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//*[./text()]/ancestor::*[./ancestor::div[@class="skin-entryBody" or @class="entry-text"] and not(self::a) and not(self::font)]', document, null, 7, null);
    for (var j = 0; j < result2.snapshotLength; j++) {
      result2.snapshotItem(j).classList.add("anc");
    }
    $('.anc').replaceWith(function () {
      return $(this).contents();
    });
    //空div処理
    var result4 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//*[self::div or self::span]/text()', document, null, 7, null);
    for (var x = 0; x < result4.snapshotLength; x++) {
      if (/^\s+/g.test(result4.snapshotItem(x).nodeValue)) {
        if (!(/ /g.test(result4.snapshotItem(x).nodeValue))) {
          result4.snapshotItem(x).nodeValue = result4.snapshotItem(x).nodeValue.replace(/^\s+/g, "");
        }
      }
    }
    var result5 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//*[self::div or self::span][contains(text()," ")]', document, null, 7, null);
    for (var y = 0; y < result5.snapshotLength; y++) {
      result5.snapshotItem(y).classList.add("div_br");
    }
    var listArray4 = document.querySelectorAll('.skin-entryBody>div:empty');
    for (var z = 0; z < listArray4.length; z++) {
      listArray4[z].remove();
    }
    var listArray5 = document.querySelectorAll('.entry-text>span[lang]');
    for (var e = 0; e < listArray5.length; e++) {
      listArray5[e].remove();
    }
    var listArray6 = document.querySelectorAll('.skin-entryBody>span.div_br[style]');
    for (var p = 0; p < listArray6.length; p++) {
      listArray6[p].classList.remove("div_br");
    }
    //lastbr処理
    $(".skin-entryBody>br").wrap("<div class='div_br'></div>");
    $(".entry-text>br").wrap("<div class='div_br'></div>");
    var result3 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]/div[not(@class="div_br")][last()]', document, null, 7, null);
    for (var k = 0; k < result3.snapshotLength; k++) {
      result3.snapshotItem(k).classList.add("div_last");
    }
    //a/img処理
    var result20 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]//a[./img or ./amp-img]/ancestor::*[not(self::td)][./ancestor::div[@class="skin-entryBody" or @class="entry-text"]]', document, null, 7, null);
    for (var w = 0; w < result20.snapshotLength; w++) {
      result20.snapshotItem(w).classList.add("anc_img");
    }
    $('.anc_img').contents().unwrap();
    var result15 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]/a[./img or ./amp-img]', document, null, 7, null);
    for (var g = 0; g < result15.snapshotLength; g++) {
      result15.snapshotItem(g).classList.add("a_img");
    }
    //td回り込み
    $(".skin-entryBody>td+a+div").next().addClass("td_after");
    var listArray = document.querySelectorAll('.skin-entryBody>.td_after');
    for (var a = 0; a < listArray.length; a++) {
      listArray[a].insertAdjacentHTML("afterend", "<div></div>");
    }
    //特殊タグ処理
    var listArray2 = document.querySelectorAll('.skin-entryBody>iframe');
    for (var b = 0; b < listArray2.length; b++) {
      listArray2[b].insertAdjacentHTML("beforebegin", "<div></div>");
      listArray2[b].insertAdjacentHTML("afterend", "<div></div>");
    }
    var listArray3 = document.querySelectorAll('.skin-entryBody>td');
    for (var c = 0; c < listArray3.length; c++) {
      listArray3[c].insertAdjacentHTML("beforebegin", "<div></div>");
    }
    //fbi処理
    var listArray7 = document.querySelectorAll('.skin-entryBody b,.skin-entryBody i,.skin-entryBody font');
    for (var q = 0; q < listArray7.length; q++) {
      listArray7[q].classList.add("fbi");
    }
    var listArray9 = document.querySelectorAll('.skin-entryBody font[size="2"]');
    for (var m = 0; m < listArray9.length; m++) {
      listArray9[m].classList.remove("fbi");
      listArray9[m].classList.add("f_size");
    }
    $('.fbi').wrap("<span class='s_fbi'></span>");
    $('.fbi').contents().unwrap();
    var result17 = document.evaluate('//span[@class="s_fbi"][./span[@class="s_fbi"]]', document, null, 7, null);
    for (var t = 0; t < result17.snapshotLength; t++) {
      result17.snapshotItem(t).classList.add("anc_fbi");
    }
    $('.anc_fbi').contents().unwrap();
    var result18 = document.evaluate('//*[@class="s_fbi" or @class="f_size"][./br[not(./preceding-sibling::* or ./following-sibling::*)]]', document, null, 7, null);
    for (var u = 0; u < result18.snapshotLength; u++) {
      result18.snapshotItem(u).remove();
    }
    var result19 = document.evaluate('//a[./font[@class="f_size"]]', document, null, 7, null);
    for (var v = 0; v < result19.snapshotLength; v++) {
      result19.snapshotItem(v).classList.add("hide_block");
    }
    $('.s_fbi>.hide_block').parent().contents().unwrap();
    $(".hide_block+br").wrap("<div class='div_br'></div>");
    //横線があればblock要素にする為クラス付加
    var result16 = document.evaluate('//span[@class="s_fbi"][contains(text(),"━")]', document, null, 7, null);
    for (var h = 0; h < result16.snapshotLength; h++) {
      result16.snapshotItem(h).classList.add("s_yoko");
    }
    var listArray8 = document.querySelectorAll('.skin-entryBody *[style]');
    for (var r = 0; r < listArray8.length; r++) {
      listArray8[r].removeAttribute("style");
    }
    var listArray10 = document.querySelectorAll('.skin-entryBody font[color]');
    for (var s = 0; s < listArray10.length; s++) {
        listArray10[s].removeAttribute("color");
    }
    //生テキスト処理
    var result14 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]/text()[string-length()>1]/following-sibling::*[1][@class="div_br"]', document, null, 7, null);
    for (var f = 0; f < result14.snapshotLength; f++) {
      result14.snapshotItem(f).classList.add("br_first");
    }
    //first_text処理
    var result10 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]/*[1]/preceding-sibling::text()[string-length()>1]', document, null, 7, null);
    var result11 = document.evaluate('//div[@class="skin-entryBody" or @class="entry-text"]', document, null, 7, null);
    result11.snapshotItem(0).insertAdjacentHTML("afterbegin", "<span class='fs'>" + result10.snapshotItem(0).nodeValue + "</span>");
    result10.snapshotItem(0).nodeValue = "";
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2019/02/28 10:43:44 - 2019-02-28
  2. 2019/02/28 10:28:25 - 2019-02-28
  3. 2019/02/23 12:51:40 - 2019-02-23
  4. 2019/02/21 19:39:10 - 2019-02-21
  5. 2019/02/21 19:14:33 - 2019-02-21
  6. 2019/02/21 12:40:03 - 2019-02-21
  7. 2019/02/20 10:18:53 - 2019-02-20
  8. 2019/02/18 11:18:59 - 2019-02-18
  9. 2019/02/12 17:50:00 - 2019-02-12
  10. 2019/02/12 15:23:04 - 2019-02-12
  11. 2019/02/12 11:41:48 - 2019-02-12
  12. 2019/02/12 10:40:35 - 2019-02-12
  13. 2019/02/07 12:37:14 - 2019-02-07
  14. 2019/02/07 12:36:42 - 2019-02-07
  15. 2019/02/06 17:41:20 - 2019-02-06
  16. 2019/02/06 10:34:46 - 2019-02-06
  17. 2019/02/06 10:31:22 - 2019-02-06
  18. 2019/02/04 14:44:14 - 2019-02-04
  19. 2019/02/03 21:19:32 - 2019-02-03
  20. 2019/02/03 11:34:12 - 2019-02-03
  21. 2019/02/03 10:31:28 - 2019-02-03
  22. 2019/02/02 13:03:45 - 2019-02-02
  23. 2019/01/29 10:07:09 - 2019-01-29
  24. 2019/01/27 16:16:40 - 2019-01-27
  25. 2019/01/24 09:29:39 - 2019-01-24
  26. 2019/01/23 20:03:10 - 2019-01-23
  27. 2019/01/23 14:01:49 - 2019-01-23
  28. 2019/01/23 12:51:26 - 2019-01-23
  29. 2019/01/15 16:43:46 - 2019-01-15
  30. 2019/01/15 16:30:36 - 2019-01-15
  31. 2019/01/07 14:36:43 - 2019-01-07
  32. 2019/01/04 20:39:14 - 2019-01-04
  33. 2019/01/02 11:12:02 - 2019-01-02
  34. 2018/12/27 10:21:31 - 2018-12-27
  35. 2018/12/25 12:31:16 - 2018-12-25
  36. 2018/12/24 13:46:48 - 2018-12-24
  37. 2018/12/24 13:42:15 - 2018-12-24
  38. 2018/12/24 10:07:19 - 2018-12-24
  39. 2018/12/24 09:54:42 - 2018-12-24
  40. 2018/11/15 18:38:44 - 2018-11-15
  41. 2018/11/14 15:56:02 - 2018-11-14
  42. 2018/11/14 15:03:12 - 2018-11-14
  43. 2018/11/12 19:51:00 - 2018-11-12
  44. 2018/11/12 14:17:55 - 2018-11-12
  45. 2018/11/12 13:29:22 - 2018-11-12
  46. 2018/11/12 13:26:24 - 2018-11-12
  47. 2018/11/09 14:54:43 - 2018-11-09
  48. 2018/11/05 21:52:21 - 2018-11-05
  49. 2018/11/05 21:06:35 - 2018-11-05