// ==UserScript== // @name SkipAntennaSite // @namespace https://greasyfork.org/ja/scripts/16465-skipantennasite // @description アンテナサイトがうざい // @version 1.4.1 // @license MIT License // @grant none // @include http://2ch-c.net/* // @include http://get2ch.net/* // @include http://the-3rd.net/* // @include http://matomeantena.com/* // @include http://moudamepo.com/* // @include http://newmofu.doorblog.jp/* // @include http://newota.blog.fc2.com/* // @include http://newresu1.blog.fc2.com/* // @include http://newyaku.blog.fc2.com/* // @include http://newero1.blog.fc2.com/* // @include http://blog-news.doorblog.jp/* // @include http://nullpoantenna.com/* // @include http://newpuru.doorblog.jp/* // @include http://besttrendnews.net/* // @include http://2ch.logpo.jp/* // @include http://s.2ch.logpo.jp/* // @include http://anaguro.yanen.org/* // @include http://a.anipo.jp/* // @include http://katuru.com/* // @include http://news-choice.net/* // @include http://img.favsite.jp/* // @include http://wk-tk.net/* // @include http://newser.cc/* // @include http://kita-kore.com/* // @include http://2channeler.com/* // @include http://matomeja.jp/* // @include http://shimamurakun.net/* // @include http://kateich.net/* // @include http://2ch-2.net/* // @include http://2ch-n.net/* // @include http://nantuka.blog119.fc2.com/* // @include http://lifeantenna.com/* // @include http://giko-news.com/* // @include http://matome-surume.com/* // @include http://blog.livedoor.jp/houkagoguide/* // @include http://blog.livedoor.jp/ind_bikkuri/* // @include http://blog.livedoor.jp/hioaysdnhjlk/* // @include http://blog.livedoor.jp/warota_a_lot/* // @include http://blog.livedoor.jp/kijyonotsudoi/* // @include http://blog.livedoor.jp/magicalnews/* // @include http://blog.livedoor.jp/gndai/* // @include http://blog.livedoor.jp/tokusetsu_news/* // @include http://blog.livedoor.jp/xexnews/* // @include http://watch2ch.2chblog.jp/* // @include http://2chfinder.com/* // @include http://gurugurulog.com/* // @include http://www.j-antenna.com/* // @include http://headline.mtfj.net/* // @include http://antennachan.com/* // @include http://www.ne.jp/asahi/* // @include http://matometatta-news.net/* // @include http://2ch-matome.com/* // @include http://tokkaban.com/* // @include http://owata.chann.net/* // @include http://newspickup.com/* // @include http://2ch-m.net/* // @include http://baseball-mag.net/* // @include http://new-soku.net/* // @include http://www.2ch-antenna.net/* // @include http://gikotena.net/* // @include http://matonet.info/* // @include http://minkurumato.net/* // @include http://news-three-stars.net/* // @include http://news-select.net/* // @include http://rss.harikonotora.net/* // @include http://vipsister.blog72.fc2.com/* // @include http://www.pantena.net/* // @include http://matomeume.com/* // @include http://matomesakura.com/* // @include http://matome-ch.com/* // @include http://0matome.com/* // @include http://www.2chantena.info/* // @include http://rotco.jp/* // @include http://uhouho2ch.com/* // @include http://afoafodayo.blog84.fc2.com/* // @include http://matomena.jp/* // @include http://nkijo.com/* // @include http://2ch-antenna.com/* // @include http://www.tukuruyoantena.com/* // @include http://www.まとめニュース.com/* // @include http://www.xn--o9j0bk8t7cqhlg.com/* // @include http://2chmatomeru.info/* // @include http://waniantenna.com/* // @include http://gossip2.net/* // @include http://kojikisokuhou.com/* // @include http://multi-media.doorblog.jp/* // @include http://blogtsurugi.blog38.fc2.com/* // @include http://konowaro.net/* // @include http://giko2ch.net/* // @include http://dariusnews.blog11.fc2.com/* // @include http://2ch-a.info/* // @include http://www.matomech.com/* // @include http://www.so9.jp/* // @include http://matonew.doorblog.jp/* // @include http://cawaii2ch.com/* // @include http://killing-time.biz/* // @include http://2ch-spot.com/* // @include http://o-2ch.net/* // @include http://jyouhouya3.net/* // @include http://www.sechigara.net/* // @include http://cyousokuvip.com/* // @include http://*.warotamaker.com/* // @include http://seiyuu-antena.antena-nijimatome.com/* // @include http://seiyuu.seiyuu-antenna.info/* // @include http://seiyuu.antena-matome-2ch.com/* // @include http://*.antenam.info/* // @include http://*.antenam.biz/* // @include http://*.antenam.jp/* // @include http://*.atna.jp/* // @include http://voice.lady.jp/* // @include http://koebuta.net/* // @include http://girlsreader.com/* // @include http://kuma-log.net/* // @include http://a-matome.com/* // @include http://antenna.gift/* // @include http://matomatome.com/* // @include http://www.antennash.com/* // @include http://antenna-ga.com/* // @include http://lifech.2-d.jp/* // @include http://katei-matome.com/* // @include http://news-pod.net/* // @include http://2chnavi.net/* // @include http://2ch.anything-navi.net/* // @include http://twobeko.com/* // @include http://girls-antena.2chblog.jp/* // @include http://*.readers.jp/* // @include http://webnew.net/* // @include http://geinou2news.blog.fc2.com/* // @include http://matomea.net/* // @include http://newsoku.jp/* // @include http://baseball.nantena.pw/* // @include http://oniyomediary.com/* // @include http://1000mg.sblo.jp/* // @include http://netaatoz.blog21.fc2.com/* // @include http://2ch-matome.net/* // @include http://koisoku.net/* // @include http://buromato.com/* // @include http://nyan.eggtree.net/* // @include http://geinou.nantena.pw/* // @include http://ii-antenna.net/* // @include http://matome-alpha.com/* // @include http://fxmtm.net/* // @include http://merry-news.com/* // @include http://clipch.com/* // @include http://aube0.com/* // @include http://xnews.jp/* // @include http://nanj-of-us.main.jp/* // @include http://nanj-matome.com/* // @include http://rd.app-heaven.net/mm.php* // @include http://yomyo.jp/* // @include http://365dys.com/* // @include http://sta-navi.net/* // @include http://moyashi.me/* // @include http://sp.2chmap.com/* // @include http://2chmap.com/* // @include http://antenna.shinobi.jp/* // @include http://trend-pr.com/* // @include http://uchitome.com/* // @include http://vipper774.blog115.fc2.com/* // @include http://2ch-matomato.com/* // @include http://nanj.matome-ch.com/* // @include http://afo-news.com/* // @include http://nanjallstars.net/* // @include http://nanj.an-matome.com/* // @include http://antennabank.com/* // @include http://newsnow-2ch.com/* // @include http://mh12.info/* // @include http://killmej.com/* // @include http://mt-antenna.info/* // @include http://thebaseball.xyz/* // @include http://proyakyuantenna.com/* // @include http://applinews24.com/* // @include http://bouyomi.jp/* // @include http://digital-mixnews.com/* // @include http://news.cnects.net/* // @include http://athena.sakuratan.com/* // @include http://digital-soccer.net/* // @include http://2chmatome-news.com/* // @include http://nanjheadline.com/* // @include http://alfalfalfa.com/* // @include http://yajiuma-antena.com/* // @include http://owt.io/* // @include http://kyuusai2nd.net/* // @include http://kanasoku.info/* // @include http://rd.app-heaven.net/* // @include http://applinews24.com/* // @include http://*.antenna-3.com/* // @include http://2ch-mma.com/* // @include http://matomenomori.net/* // @include http://newsquo.net/* // @include http://egone.org/* // @include http://hapiyaku.com/* // @include http://yuukoku.net/* // @include http://isekaitraffic.livedoor.biz/* // @include http://www.lifeappli-antenna.com/* // @include http://iwashi.biz/* // @include http://www.news1000000.com/* // @include http://ga-t.net/* // @include http://www.hiroburo.com/* // @include http://newtroc.net/* // @include http://watashe.blog135.fc2.com/* // @include http://hemine.co/* // @include http://esite100.com/* // @include http://imakita.cowhow.net/* // @include http://plasma-antenna.com/* // @include http://www.newposu.com/* // @include http://kijyo-antena.com/* // @include http://kdkjch.com/* // @include http://dietantenna.net/* // @include http://nanteko.com/* // @include http://sepian.org/* // @include http://antenasu.net/* // @include http://rss-seo.click/* // @include http://kaigai-antena.com/* // @include http://2chmm.com/* // @include http://handero.net/* // @include http://blue-a.org/* // @include http://marugoto-antenna.com/* // @include http://poka-n.net/* // @include http://vipick.net/* // @include http://news-channel.doorblog.jp/* // @include http://trtd.info/* // @include http://antennapan.info/* // @include http://*.ozmaker.net/* // @include http://b-news.doorblog.jp/* // @include http://honey-tiger.ldblog.jp/* // @include http://matome-crawler.com/* // @include http://shimasoku.com/* // @include http://news-matome.com/* // @include http*://pun6.com/* // @include http://antenow.com/* // @include http://bokuantena.com/* // @include http://mitena.net/* // @include http://ii-net-ii.com/* // @include http://*.kaeru.me/* // @include http://*.nantoka-antenna.com/* // @downloadURL none // ==/UserScript== var siteDefs = { // しぃアンテナ(*゚ー゚) '2ch-c.net': ['a.et_title', textContent(null, 'table.entry a')], // 2GET 'get2ch.net': ['li.pickup a', 'a.list-group-item[style="color:#F55;font-weight:bold;"]'], // The 3rd 'the-3rd.net': ['a.ui-link[style^="color:#F33"]', descendantClass('div#l_col a', 'span[style^="color:"]')], // ワロタあんてな 'matomeantena.com': [replaceFeedClick('.current a.feed-click'), replaceFeedClick('.active-feed a.feed-click'), '.rss_link > a'], // にゅーれす 'newresu1.blog.fc2.com': ['.title_link a', 'li.pickup a', '#pickupnews .title_link_a'], // にゅーもふ 'newmofu.doorblog.jp': ref('newresu1.blog.fc2.com'), // にゅーおた 'newota.blog.fc2.com': ref('newresu1.blog.fc2.com'), // にゅーやく 'newyaku.blog.fc2.com': ref('newresu1.blog.fc2.com'), // にゅーえろ 'newero1.blog.fc2.com': ref('newresu1.blog.fc2.com'), // だめぽアンテナ 'moudamepo.com': ['li.ui-btn-up-e a.ui-link-inherit', descendantClass('a.ui-link-inherit', 'span[style="color:#ff0000;"]'), '.headline_pkup a', '.hl_pkup a'], // ぶろにゅー // UAをPCにする 'blog-news.doorblog.jp': function() { var t = queryString('t'); if (t) { t = decodeURIComponent(t); if (byDescendantTextContent(function(){return t;}, 'li a', 'span.a-title', targetStartsWithTitle)) return; } byClass('a.title_link'); }, // ぬるぽあんてな 'nullpoantenna.com': [replaceFeedClick('li.current a.feed-click'), replaceFeedClick('li.active-feed a.feed-click')], // にゅーぷる // リンク先が間違っているときは飛ばない 'newpuru.doorblog.jp': function(){ var url = queryString('url'); if (url) url = reverse(decodeURIComponent(url)); else { var match = window.location.href.match(/#url=(.+)/); if (!match) return; url = match[1]; } openLink(url); }, // best trend news 'besttrendnews.net': ['div.entry[data-type="catchy"] a', 'div.select a'], // LogPo!2ch // mobile版は対応不可 //'2ch.logpo.jp': '.caption a', // 2015-02-19: リニューアルしたらしいが '2ch.logpo.jp': 'div.PickArticle a', 's.2ch.logpo.jp': 'h2.ArticleLink a', // アナグロあんてな 'anaguro.yanen.org': ['td.title a.title', 'div[style="padding:4px 2px;background-color:#ffffff;"] a[target="_blank"]'], // アンテナ速報 'a.anipo.jp': '#tbody tr[style^="background-color: rgb(255, 176, 187)"] a[title]', // 勝つるあんてな 'katuru.com': '.rss_center_div a', //newschoice 'news-choice.net': function() { var l = queryString('l'); if (l && byClass('a[href="' + decodeURIComponent(l) + '"]')) return; byClasses('#article [data-type="catchy"] a', '.pickuptitle a'); }, // 2次元と3次元の画像ブログまとめ 'img.favsite.jp': descendantClass('div a.stp', 'h2'), // わくてか 'wk-tk.net': 'div.selected a', // News人 'newser.cc': 'tr.target a', // キタコレ // 'a.link-red' or 'a.link-pink'? 'kita-kore.com': ['.article.active a', textContent(null, 'div.list[style^="display: block"] a', titleStartsWithTarget)], // ねらーアンテナ '2channeler.com': function() { var qs = getParameters(); var n = qs['n'], d = qs['d']; if (n && d && byClass("a.title[onmouseover^=\"thumb_on('" + n + "','" + d + "'\"]")) return; var targets = queryNodes('div#thumb_box > div'); for (var i = 0, len = targets.length; i < len; i++) if (targets[i].querySelector('div label').textContent.trim() == 'Pickup') { var target = targets[i].querySelector('a.ui-link'); if (target && openLink(target.getAttribute('href'))) return; } byClasses('tr.line4 a', 'tr.line3 a'); }, // matomeja 'matomeja.jp': 'div.active .entry-title a', // しまむらアンテナ 'shimamurakun.net': 'div#main-item a', // 家庭ちゃんねる 'kateich.net': 'li.linktitle a', // つーアンテナ '2ch-2.net': function() { // ページを移動するときにうざいポップアップを出さない var e = queryNode('.active .entry-title'); if (e) e.className = ''; byClass('.active a'); }, // のーアンテナ '2ch-n.net': ['.main-column .feed-list .entry-item.active .entry-title a', '.active .feed_title a'], // なんか憑かれた速報 'nantuka.blog119.fc2.com': textContent('h3 > a', 'div.article a'), // ライフあんてな 'lifeantenna.com': 'tr.active .feed_title a', // ギコにゅー 'giko-news.com': ['.article.active a', '#article-contents a.link-red', '#article-list-body li.selected a'], // するめアンテナ 'matome-surume.com': 'tr.active .feed_title a', // 放課後ガイドライン 'blog.livedoor.jp/houkagoguide': [textContent('h2.entry-title > a', 'div.article-body-more a'), textContent(null, 'div#article-contents a', titleStartsWithTarget)], // キットカスタネット 'blog.livedoor.jp/ind_bikkuri': descendantClass('div.article-body a', 'span[style^="color:"]'), // わろたあっろと 'blog.livedoor.jp/warota_a_lot': 'article#Article > h2 > div > div:not([class]) > a', // ニュースJAPAN 'blog.livedoor.jp/hioaysdnhjlk': '.title_link a', // NEWS DIJEST 'blog.livedoor.jp/gndai': textContent(null, '.article-body a', titleStartsWithTarget), // 鬼女の集い 'blog.livedoor.jp/kijyonotsudoi': descendantClass('div.article-body a', 'span[style^="color: rgb(255, 0, 0)"]'), // まじかるニュース 'blog.livedoor.jp/magicalnews': textContent('.article-title', 'div.article-body p a', titleStartsWithTarget), // 特設ニュースちゃんねる 'blog.livedoor.jp/tokusetsu_news': '#title_site a', // XEX NEWS 'blog.livedoor.jp/xexnews': textContent('.article-title', 'div.article-body p a', titleStartsWithTarget), // watch@2チャンネル 'watch2ch.2chblog.jp': descendantClass('div.article-body a', 'span.pickup_link'), // 2chファインダー '2chfinder.com': ['li.single a', 'ul.single a'], // ぐるぐるログ // UAをPCにする 'gurugurulog.com': function() { var n = queryString('n'); if (n) byClass('.article .cat-kiji-title.kiji_n-' + n + ' a'); else byClass('.article .title_link a'); }, // j-antenna 'www.j-antenna.com': 'a.pickup_entry_title', // とろたまヘッドライン 'headline.mtfj.net': 'td.bold a', // アンテナちゃん 'antennachan.com': 'div#rline_pu div.netalink a', // 朝目新聞 'www.ne.jp/asahi': 'a.feedtitle', // 2chまとめヘッドライン '2ch-matome.com': [descendantClass('a.main_content_link', 'p.pickup_article'), descendantClass('a.mainContentLink', 'span.red')], // 特価板 'tokkaban.com': 'li.current a', // オワタあんてな 'owata.chann.net': ['.pickup a.article-link', 'div.active .choice a'], // NEWS PICK UP 'newspickup.com': 'p.active a', // まとめアンテナ(´∀`) '2ch-m.net': textContent(null, 'tr.entry a', titleStartsWithTarget), // BaseBall MAG 'baseball-mag.net': descendantClass('article#content a', 'div.title[style^="color:"]'), // ニュー速 'new-soku.net': 'a.target_article', // 2chアンテナ 'www.2ch-antenna.net': 'a._txt_red', // ギコあんてな! 'gikotena.net': ['.pickup .site_content_title a', 'a.label_list_content_title'], // まとねっと 'matonet.info': 'a.pickup', // みんくるアンテナ( ゚Д゚) 'minkurumato.net': 'td.feed_title a[style="color:red"]', // ニュース星3つ! 'news-three-stars.net': ['div[data-type="catchy"] a.entry-title', 'div[data-type="catchy"] .entry-title a', 'div.select a'], // まとめたった速報www 'matometatta-news.net': ['div[data-type="catchy"] a.entry-title', 'div[data-type="catchy"] .entry-title a', 'div.pickuplink.title a'], // NEWS SELECT 'news-select.net': 'li.selected a', // harikonotora 'rss.harikonotora.net': textContent(null, 'div.headline a.kizi'), // にゅーすなう! 'vipsister.blog72.fc2.com': 'div.selected a', // にゅーすなう! 'newsnow-2ch.com': '#article [data-type="catchy"] a.entry-title', // P!アンテナ 'www.pantena.net': 'article#main-entry a', // ニュース速報まとめ梅 'matomeume.com': ['div.kijis5 a', 'div.kjran3 a'], // ニュース速報まとめ桜 'matomesakura.com': ['div.kijis5 a', 'div.kjran3 a'], // 2chまとめちゃんねる 'matome-ch.com': textContent(null, 'div.entrys_title a', titleStartsWithTarget), // おまとめ '0matome.com': 'div.pickup a', // 2chまとめ 'www.2chantena.info': textContent(null, 'div.entry-title a', titleStartsWithTarget), // Rotco 'rotco.jp': 'td.articleTitle a[style^="color:"]', // ウホウホあんてな 'uhouho2ch.com': 'li.pickup a', // アフォニュース 'afoafodayo.blog84.fc2.com': 'div.selecttitle a', // アフォニュース 'afo-news.com': ['#article [data-type="catchy"] .entry-title a', '#article [data-type="catchy"] a.entry-title'], // マトメナ 'matomena.jp': 'div.linked_article a', // 日刊鬼女通信 'nkijo.com': 'a.Bp2ATitleKiji', // 2ちゃんてな '2ch-antenna.com': 'td.article_title a[style^="color"]', // つくるよあんてな 'www.tukuruyoantena.com': 'table.entrylist a[style^="color"]', // まとめニュース速報 'www.まとめニュース.com': 'div.article_box a[style^="color"]', 'www.xn--o9j0bk8t7cqhlg.com': 'div.article_box a[style^="color"]', // 2ちゃんねるまとめるまとめ '2chmatomeru.info': 'tr[style^="background-color"] td.tdLink a', // ワニアンテナ 'waniantenna.com': 'a.story-title-link.red', // GOSSIP CHANNEL 'gossip2.net': ['.mainArea .main .topArticle .txtCell h2 a', 'div.art-title-sp > div > a', 'div.art-rank > div > a:first-child', 'div.art-rank > div > a:nth-child(2)', function() { var id = queryString('id'); if (id && id.length > 3) byClass('div.art-anchor[data-article-num="' + id.substring(3) + '"] a') }], // 乞食速報 'kojikisokuhou.com': 'div.body > ul.entries > li.entry > span > a', // マルチメディアNEWS 'multi-media.doorblog.jp': [textContent('h1.article-title', 'div#article-contents a[target="_blank"]'), 'div.article-body-inner > a:last-child'], // エ・ロックオン 'blogtsurugi.blog38.fc2.com': 'div.postmain a[title]', // この●●クソワロタwww 'konowaro.net': function() { var l = queryString('l'); if (l && byClass('a[href="' + decodeURIComponent(l) + '"]')) return; if (!byClass('#article [data-type="catchy"] a') && !byTextContent('div.title h2 a', 'div.selected a', targetStartsWithTitle)) byClass('div.selected a'); }, // ギコあんてな 'giko2ch.net': 'a.post_link.pickup', // MEGA NEWS LAUNCHER 'dariusnews.blog11.fc2.com': textContent(null, 'li a', titleStartsWithTarget), // 2chまとめ放送局 '2ch-a.info': 'tr.danger a', // まとめちゃんねる 'www.matomech.com': textContent(null, 'td.articleListTableTitle a', titleStartsWithTarget), // 【速報】アンテナ(*・ω・)ノ゙ 'www.so9.jp': 'article#rsskizi a', // まとにゅー! 'matonew.doorblog.jp': 'div.p_link a', // 奥様アンテナ 'cawaii2ch.com': textContent(null, 'div.entry a', titleEndsWithTarget), // 暇つぶしアンテナ 'killing-time.biz': 'a.titlematch', // 2chまとめSPOT '2ch-spot.com': function() { var f_id = queryString('f_id'); if (!f_id || !byClass('a.future-entry[data-entry-id="' + f_id + '"]')) byClass('a.future-entry[style*="display: block"]'); }, // おにちゃんねる 'o-2ch.net': 'td.article.red a', // 情報屋さん。 'jyouhouya3.net': 'a.link_ra', // せちがら速報 'www.sechigara.net': [checkExists('div.t_h'), 'div.article-body-inner > a', descendantClass('div.article-body > a', 'b > span[style^="color: rgb(255, 0, 0)"]')], // 超速V話題のまとめちゃん 'cyousokuvip.com': [checkExists('div.t_h'), descendantClass('div.article-body-inner > a', 'span[style^="color: rgb(255, 0, 0)"]'), descendantClass('div.article-body > a', 'span[style^="color: rgb(255, 0, 0)"]')], // ウチのトメさまがいちばんカワイイ 'uchitome.com': [checkExists('div.t_h'), descendantClass('div.article div.main > a', 'span[style^="color: rgb(255, 0, 0)"]'), descendantClass('div.article-body > a', 'span[style^="color: rgb(255, 0, 0)"]')], // ワロタめーかー '.warotamaker.com': replaceFeedClick('li.active-feed a.feed-click'), // 声優アンテナ~二次元まとめ~(feed) 'seiyuu-antena.antena-nijimatome.com/feed': ['td.feed_title a[style="color:red"]', 'div.feed_title a[style="color:red"]'], // 声優アンテナ~二次元まとめ~(article) 'seiyuu-antena.antena-nijimatome.com/abs': ['div#articles > div.source > a[target="_blank"]', 'div#articles > a[target="_blank"]'], // 二次元アンテナ速報 'seiyuu.seiyuu-antenna.info/feed': ref('seiyuu-antena.antena-nijimatome.com/feed'), 'seiyuu.seiyuu-antenna.info/abs': ref('seiyuu-antena.antena-nijimatome.com/abs'), // 声優アンテナ~まとめ~ 'seiyuu.antena-matome-2ch.com': 'a.rclick[style="color:red"]', // アンテナメーカー '.antenam.info': function() { if (byClass('span.target_item a')) return; var path = window.location.pathname; var match; if (match = path.match(/\/items\/view\/(\d+)/)) byClass('a[href^="/items/click/' + match[1] + '"]'); else if (match = path.match(/\/items\/search\/title:(.+)/)) byTextContent(function(){return decodeURIComponent(match[1]);}, '.item_title_list a.blog_post'); }, '.antenam.biz': ref('.antenam.info'), '.antenam.jp': ref('.antenam.info'), '.atna.jp': ref('.antenam.info'), // 【声女】2ch声優速報まとめアンテナ 'voice.lady.jp': 'div.post > a + a', // 声豚あんてな 'koebuta.net': 'div.pickup a', // Girls Reader 'girlsreader.com': 'h2#single_h2 > a', // クマーあんてな 'kuma-log.net': 'td.article a.rss', // キチママまとめアンテナ 'a-matome.com': function() { // urlencodeされている場合は未確認 var match = window.location.search.match(/\?RSS=\d\d\d\d-\d\d-\d\d([^&]+)/); if (match) byClass('a[href^="./re.php?URL=' + match[1] + '&"]'); }, // アンテナギフト(・∀・) 'antenna.gift': 'tr.targetItem a[id]', // matomatome 'matomatome.com': ['ul#current a.topictitle', 'div.title a.ui-link'], // アンテナシェア // ターゲットが複数ある場合は飛ばないようにした 'www.antennash.com': [textContent(null, 'div.cmain a', targetStartsWithTitle), descendantClass('a', 'span[style*="#1596C1;"]', true)], // あんてなガッ!! 'antenna-ga.com': descendantClass('ul#new-repo-list a', 'strong'), // ほのぼのライフあんてな 'lifech.2-d.jp': 'li.mainitem a', // 家庭生活まとめのまとめ 'katei-matome.com': 'li.item a.featureEntry', // 結婚生活 - NewsPod 'news-pod.net': descendantClass('div#commentlist a', 'span.name[style="color:#E33"]'), // 2chnavi '2chnavi.net': [textContent('div.content_header_title', 'a.entry_title', titleStartsWithTarget), descendantTextContent('div.content_header .title_text', 'a.entrylistrow_body', 'div.entrylistrow_title', titleStartsWithTarget)], // チラアンテナ(つд・ ) '2ch.anything-navi.net': descendantClass('a[target="_blank"]', 'font[color="RED"]'), // つべこアンテナ 'twobeko.com': 'li.rss_light a', // ガールズアンテナ 'girls-antena.2chblog.jp': 'a.Bp2ATitleKiji', // readers.jp '.readers.jp': ['.target_item a', descendantTextContent(null, 'a.ui-link-inherit', 'h3', titleStartsWithTarget)], // ウェブニュー 'webnew.net': ['#article [data-type="catchy"] .tablecell-title a', '#article [data-type="catchy"] .entry-title a', '#article [data-type="catchy"] a.entry-title', 'p.link_item.active a'], // アンテナバンク 'antennabank.com': '#article [data-type="catchy"] a.entry-title', // 芸能ニュース2ch報道 'geinou2news.blog.fc2.com': [checkExists('div.entry_body div.t_b'), checkExists('div.ently_body div.t_b'), 'div.entry_body a[target="_blank"]', 'div.ently_body a[target="_blank"]'], // まとめあ 'matomea.net': descendantClass('a.rss_link', 'span.pickup'), // ニュー速アンテナ 'newsoku.jp': descendantClass('ul#pickup-list a', 'span.red'), // プロ野球速報 'baseball.nantena.pw': 'div.mp-recommend-entry-1 a', // 鬼嫁日記〜2ch生活まとめ〜 'oniyomediary.com': [checkExists('.article-body .t_b'), descendantClass('div.article-body a', 'span[style^="color: rgb(255, 0, 0)"]')], // センミリG(仮) '1000mg.sblo.jp': textContent('h3 .title', 'div.text a'), // にゅーすAtoZ 'netaatoz.blog21.fc2.com': 'div.selected a', // VIPあんてな '2ch-matome.net': ['div.entries a.title[style^="color:red"]', '.entry_title a[style^="color:red"]'], // 恋速~恋愛速報2chまとめ~ 'koisoku.net': 'p.Itemtitle a', // ぶろまと 'buromato.com': '#mainentry .entry_title a', // にゃんてな! 'nyan.eggtree.net': function(){ var id = queryString('a'); if (id) byClass('li.article[id="' + id + '"] a'); }, // 芸能ニュースヘッドライン 'geinou.nantena.pw': 'div.mp-recommend-entry-1 div.mp-entry-title a', // いーあんてな(#゚w゚) 'ii-antenna.net': descendantClass('a.e', 'div.t[style="color:#F22;"]'), // まとめアンテナα 'matome-alpha.com': ['.pickup_entry a', '.entry_title_eid a[style^="color: rgb(255, 0, 0)"]'], // フットボール速報まとめ 'fxmtm.net': 'a.topic', // メリーニュース 'merry-news.com': 'tr.active .feed_title a', // クリップちゃんねる 'clipch.com': 'div.article-body div.source a', // おもしろニュース 'aube0.com': 'div.Single div.Singlebody p.Itemtitle a', // XNews 'xnews.jp': function() { var target = queryNode('h1#main-topic + div#main-content-search'); if (target) { target = target.querySelector('h1#main-content-search-title a'); if (target) openLink(target.getAttribute('href')); } }, // NANJ of US 'nanj-of-us.main.jp': '.r_entry a', // なんJまとめアンテナ 'nanj-matome.com': ['a.flink', textContent(null, 'h3 a', titleEndsWithTarget)], // まとめアプリChaconneシャコンヌ 'rd.app-heaven.net': 'a.browserlink', // YomYo 'yomyo.jp': function() { if (!byClass('a.btn-app-dl', 'data-link')) byClass('.blog--list.layout--highlight a'); }, // ちゃんねる365 '365dys.com': ['div.bar.link + table.article .title a', 'div.bar.link + table.article .entry a'], // STANAVI 'sta-navi.net': [descendantClass('.rss_pc_td a', 'div.rss_pc_body[style="color:deeppink;"]'), descendantClass('.rss_sp_td a', 'div.rss_sp_body[style="color:deeppink;"]')], // もやしアンテナ 'moyashi.me': descendantClass('table.table a', 'font[color="#fc3939"]'), // 2ちゃんマップ // とりあえず最初のやつ 'sp.2chmap.com': 'ul#List a', '2chmap.com': 'table.list a', // 忍者あんてな(β) 'antenna.shinobi.jp': ['h2.showcase-title a', descendantClass('.c-showcase a', '.showcase-title')], // TREND NEWS24 'trend-pr.com': 'div.article > a', // V速NEWS 'vipper774.blog115.fc2.com': 'li.selected a', // 2chまとまと '2ch-matomato.com': ['.layout--highlight a', '.blog--highlight a'], // なんJまとめちゃんねる 'nanj.matome-ch.com': textContent(null, 'div.entry_title a', titleStartsWithTarget), // なんJオールスターズ 'nanjallstars.net': [textContent(null, 'div.entry_title a', titleEndsWithTarget), textContent(null, 'div.entry_title a', titleStartsWithTarget)], // プロやきう・なんJまとめアンテナ 'nanj.an-matome.com': function() { var rss = queryString('RSS'); if (rss && rss.length > 10) { var url = decodeURIComponent(rss.substring(10)); if (byClass('a[href^="./re.php?URL=' + url + '"]') || byClass('a[href="' + url + '"]')) return; } }, // もくぬふいんふぉ 'mh12.info': '#main .linkblockspe .rsslink a', // キルjアンテナ 'killmej.com': '#pickup_area a', // MeeTreeアンテナ 'mt-antenna.info': 'div.article_inner.pick a', // THE BASEBALL 'thebaseball.xyz': '#tabs-1 ul li:first-child a', // プロ野球アンテナ 'proyakyuantenna.com': function() { var targets = queryNodes('.article-wrap'); for (var i = 0, len = targets.length; i < len; i++) { if (targets[i].querySelector('.article-access')) { var match = targets[i].onclick.toString().match(/window\.open\('(.*)'\)/); if (match) return openLink(match[1]); return false; } } }, // アプリNews24 'applinews24.com': '.item_title_pickup > a', // 棒読みあんてな 'bouyomi.jp': 'a[style="color:red"]', // デジタルニュースミックス 'digital-mixnews.com': textContent('.article-title', '.pickup-news a', function(target, title) { return titleEndsWithTarget(target.replace(' ', ' '), title.replace(' ', ' ')); }), // コネクツニュース 'news.cnects.net': '#news-main .btn a', // アテナあんてな 'athena.sakuratan.com': '#hot_article .top a', // DIGITAL-SOCCER.NET 'digital-soccer.net': 'a.news_title[style^="color:red"]', // !ANTENNA? '2chmatome-news.com': 'a#pickup', // なんJ Headline 'nanjheadline.com': '#detail_title a', // アルファルファモザイク 'alfalfalfa.com': descendantTextContent(null, 'a', 'span.sidebody', titleStartsWithTarget), // やじうまあんてな 'yajiuma-antena.com': '.red a', // オワタあんてな 'owt.io': '.post-content a', // ○○的ニュースをお伝え(以下略 // (究極最終兵器2ndWeapon) 'kyuusai2nd.net': textContent(null, 'a[target="_blank"]', titleStartsWithTarget), // カナ速 //'kanasoku.info': function () { // if (!queryNode('div.body span.nnn')) // byClass('div.body div.tt a'); //}, // まとめアンテナChaconne. 'rd.app-heaven.net': descendantClass('#app_info a', '.btn-primary'), // アプリNews24 'applinews24.com': '.reco.addin > a', // 2chまとめアンテナ '.antenna-3.com': 'a[style="font-weight:700;color:#E27689"]', // 2chまとめのまとめアンテナ '2ch-mma.com': '#article [data-type="catchy"] a.entry-title', // まとめの杜(壱) 'matomenomori.net': 'a#top_caption_a', // ニュー速クオリティ@アンテナ 'newsquo.net': '.entry_title a[style="color:#ff0000;"]', // everything is gone 'egone.org': textContent(null, 'div.nn a', titleStartsWithTarget), // はぴやく 'hapiyaku.com': '.danger a', // 憂国あんてな 'yuukoku.net': [descendantClass('a.ui-link-inherit', 'span.rl1'), '.pickup a.hl_title1'], // 異世界とらふぃっく! 'isekaitraffic.livedoor.biz' : 'a.Bp2ATitleKiji', // ライフアプリアンテナ 'www.lifeappli-antenna.com': [descendantClass('.articles-lists a', '.lists-text p.current'), '.articles-contents .article-contents-title a'], // いわしアンテナ >°))))彡 'iwashi.biz': descendantClass('.article a', 'font[style^="background-color:#FFCCCC"]'), // ニュース$ミリオネア 'www.news1000000.com': '#archive_list a.archive_links.title_archive', // ガッてな 'ga-t.net': ['.sparticle.red a', '.article.red a'], // ひろぶろ 'www.hiroburo.com': '.article-body span[style="color: rgb(255, 0, 0);"]+a', // にゅ~とろアンテナ 'newtroc.net': '#main-contents .antena-content .linkcontent a', // 私女だけどw 'watashe.blog135.fc2.com': textContent(null, 'div.body a', titleStartsWithTarget), // ヘミ猫あんてな 'hemine.co': '.selected .entry-title a', // 良いサイト100選 'esite100.com': ['#mainentry a', descendantClass('.entry_title_pic a', 'b[style="color:#ff0000;"]')], // 今北広報 'imakita.cowhow.net': descendantClass('.entryTitle a', 'em'), // プラズマアンテナ 'plasma-antenna.com': '#articles .feed_title a[style="color:red"]', // にゅーぽす 'www.newposu.com': '.pickup-list .specify a', // KIJYO ANTENA 'kijyo-antena.com': descendantClass('.title a', 'font[color="#ff0000"]'), // 気団・鬼女ちゃんねる 'kdkjch.com': descendantClass('.entry_title_all a', 'p.pagetitle'), // ダイエットあんてな 'dietantenna.net': ref('kdkjch.com'), // /(^o^)\ナンテコッタイ 'nanteko.com': 'a.pickup_title', // セピアンテナ 'sepian.org': '.single_box article a', // アンテナっす 'antenasu.net': 'a[style="font-weight:700;color:#E27689"]', // RS2 ANTENNA 'rss-seo.click': descendantClass('.single-post-detail > a', '.single-post-blanklink'), // 海外アンテナ 'kaigai-antena.com': '.pick_line a', // 2chまとめのまとめ // よくわからないので転送ページだけを対象にする。 '2chmm.com/c': '.wrapper a.post', // はんでろan 'handero.net': '.news-link.target a', // ブルーアンテナ 'blue-a.org': descendantClass('.arrow_red a', 'span[style="color:#ff0000;"]'), // まるごとアンテナ 'marugoto-antenna.com': [textContent(null, '.pickup a', titleStartsWithTarget), descendantClass('nav a', 'font[color="red"]')], // ポカーンあんてな 'poka-n.net': 'a.cc[style="font-size:24px;color:red;font-weight:bold;"]', // vipick.net 'vipick.net': '.active .title a', // NEWS CHANNEL 'news-channel.doorblog.jp': descendantClass('.articles li a', 'font[color="RED"]'), // とらとどあんてな 'trtd.info': 'article .mainclass a', // あんてなパン 'antennapan.info': '#article-title a.content-link', // オズメーカー '.ozmaker.net': ['.danger a', descendantClass('a.list-group-item', '.text-active')], // びニュー! 'b-news.doorblog.jp': 'a.archive_links.title_red', // ハニトラフニトラ 'honey-tiger.ldblog.jp': ['.cat-kiji-title a', function() { var qs = getParameters(); var c = qs['c'], n = qs['n']; if (c && n) byClass('.' + c + '.kiji_n-' + n + ' a'); }], // まとめクロラ 'matome-crawler.com': descendantClass('li.entry', 'span[style^="color:#F33;"]'), // しま速 'shimasoku.com': descendantClass('.contents a', 'span[style="color:red;"]'), // まとめてニュース 'news-matome.com': '.notice_kiji_kobetu .kiji_title a', // ツイキチ 'pun6.com': '#mainKiji a.kijiClickMain', // アンテなう! 'antenow.com': 'h4.feedtb2 a', // ぼくあんてな 'bokuantena.com': 'a#pickup', // みてなアンテナ 'mitena.net': ['.entry-titlet a', '.content.single .post .sequel a'], // イイネット(・∀・)イイ!! 'ii-net-ii.com': 'a.pickupentry', // カエル.me '.kaeru.me': ['.title a[data-pickup]', 'li a[data-pickup]'], // ナントカアンテナ '.nantoka-antenna.com': descendantClass('a.entry_anchor', '.entry_title[style$="rgb(255, 204, 204);"]') }; function toAction(action) { if (!action) return null; var type = typeof action; if (type == 'function') return action; if (type == 'string') return function() {byClass(action);}; if (isArray(action)) return function() { for (var i = 0, len = action.length; i < len; i++) { var fn = toAction(action[i]); if (fn && fn()) return true; } return false; }; return null; } function getAction() { var host = location.host; var action = siteDefs[host]; if (!action) { var arr = location.pathname.split('/'); for (var i = 1, len = arr.length; i < len && !action; i++) { host += '/' + arr[i]; action = siteDefs[host]; } } if (!action) { host = ''; var arr = location.host.split('.'); for (var i = arr.length - 1; i >= 0 && !action; i--) { host = '.' + arr[i] + host; action = siteDefs[host]; } } return toAction(action); } function queryNode(selector) { return document.querySelector(selector); } function queryNodes(selector) { return document.querySelectorAll(selector); } function checkExists(selector) { return function() {return queryNode(selector);}; } function ref(site) { return function() { var action = toAction(siteDefs[site]); return action && action(); }; } // querystringを取得する。 function getParameters() { var r = {}; var p = window.location.search.substring(1).split('&'); for (var i = 0; i < p.length; i++) { var e = p[i].split('='); r[e[0]] = e[1]; } return r; } function queryString(name) { return getParameters()[name]; } function isArray(obj) { return Object.prototype.toString.call(obj) === '[object Array]'; } function reverse(s) { return s.split('').reverse().join(''); } function openLink(target) { if (!target) return false; window.open(target, '_self').focus(); //window.location.replace(target); return true; } // ターゲットを直接特定できるサイト function byClass(targetQuery, ref) { var target = queryNode(targetQuery); if (target) return openLink(target.getAttribute(ref || 'href')); return false; } // ターゲットの配列で特定できるサイト function byClasses() { for (var i = 0, len = arguments.length; i < len; i++) if (byClass(arguments[i])) return true; return false; } function classes() { var args = arguments; return function() {return byClasses.apply(null, args);}; } // ターゲットの子孫から特定できるサイト function byDescendantClass(targetQuery, descendantQuery, singleOnly) { var targets = queryNodes(targetQuery); var found = null; for (var i = 0, len = targets.length; i < len; i++) if (targets[i].querySelector(descendantQuery)) { if (singleOnly) { if (found) return false; found = targets[i]; } else if (openLink(targets[i].getAttribute('href'))) return true; } return found && openLink(found.getAttribute('href')); } function descendantClass(targetQuery, descendantQuery, singleOnly) { return function() {return byDescendantClass(targetQuery, descendantQuery, singleOnly);}; } function startsWith(str, prefix) { return str.lastIndexOf(prefix, 0) == 0; } function endsWith(str, suffix) { return str.indexOf(suffix, str.length - suffix.length) !== -1; } // titleがtarget+anyのとき function titleStartsWithTarget(target, title) { return startsWith(title, target); } // titleがany+targetのとき function titleEndsWithTarget(target, title) { return endsWith(title, target); } // targetがtitle+anyのとき function targetStartsWithTitle(target, title) { return startsWith(target, title); } // targetがany+titleのとき function targetEndsWithTitle(target, title) { return endsWith(target, title); } function initMatcher(matcher) { return matcher ? matcher : function(target, title) {return target == title;}; } // タイトルを取得する。 // titleQueryがfunction: 関数が返す文字列 // titleQueryがnull: ドキュメントのタイトル // titleQueryがCSSセレクタ: セレクタに一致するノードの内容 function getTitle(titleQuery) { var title; if (typeof titleQuery == 'function') title = titleQuery(); else if (titleQuery) { title = queryNode(titleQuery); if (!title) return null; title = title.textContent; } else title = document.title; if (!title) return null; title = title.trim(); if (!title.length) return null; return title; } // ターゲットをタイトル文字列から特定できるサイト function byTextContent(titleQuery, targetQuery, matcher) { matcher = initMatcher(matcher); var title = getTitle(titleQuery); if (!title) return false; var targets = queryNodes(targetQuery); for (var i = 0, len = targets.length; i < len; i++) { var text = targets[i].getAttribute('title'); if (text && matcher(text.trim(), title) && openLink(targets[i].getAttribute('href'))) return true; text = targets[i].textContent; if (text && matcher(text.trim(), title) && openLink(targets[i].getAttribute('href'))) return true; } return false; } function textContent(titleQuery, targetQuery, matcher) { return function() {return byTextContent(titleQuery, targetQuery, matcher);}; } // ターゲットの子孫のテキストとタイトル文字列から特定できるサイト function byDescendantTextContent(titleQuery, targetQuery, descendantQuery, matcher) { matcher = initMatcher(matcher); var title = getTitle(titleQuery); if (!title) return false; var targets = queryNodes(targetQuery); for (var i = 0, len = targets.length; i < len; i++) { var descendant = targets[i].querySelector(descendantQuery); if (descendant) { var text = descendant.textContent; if (text && matcher(text.trim(), title) && openLink(targets[i].getAttribute('href'))) return true; } } return false; } function descendantTextContent(titleQuery, targetQuery, descendantQuery, matcher) { return function() {return byDescendantTextContent(titleQuery, targetQuery, descendantQuery, matcher);} } // リンクをリプレースするサイト function byReplaceHref(targetQuery, oldValue, newValue) { var target = queryNode(targetQuery); if (target) return openLink(target.getAttribute('href').replace(oldValue, newValue)); return false; } // リンクの'/feed/'を'/feed-click/'にリプレースするサイト function byReplaceFeedClick(targetQuery) { return byReplaceHref(targetQuery, '/feed/', '/feed-click/'); } function replaceFeedClick(targetQuery) { return function() {return byReplaceFeedClick(targetQuery);}; } var action = getAction(); if (action) { var timeouts = [500, 500, 1000]; for (var i = 0; i < timeouts.length; i++) setTimeout(action, timeouts[i]); }