March 04, 2007
スパム 05:09
- Permalink
- Comments (318)
- Trackbacks (0)
blog
コメントとトラックバックのデータをとってみた。 これほとんどスパム。ここのブログじゃないけど。
+------------+---------------+ | year-month | # of comments | +------------+---------------+ | 06-08 | 79 | | 06-09 | 97 | | 06-10 | 17 | | 06-11 | 21 | | 06-12 | 44 | | 07-01 | 1982 | | 07-02 | 4222 | | 07-03 | 913 | +------------+---------------+ +------------+-----------------+ | year-month | # of trackbacks | +------------+-----------------+ | 06-09 | 22 | | 06-10 | 1 | | 06-12 | 1179 | | 07-01 | 825 | | 07-02 | 24787 | | 07-03 | 1854 | +------------+-----------------+
オレが憂鬱になっている間に先月のトラックバックスパムは約2万5千件もw
昨日やった対策がどのくらい効くかな……。 トラックバックが完全に防げないのはこのブログで実証済みだけど。
スパムのデータ集めてスパムフィルタ作るのも楽しそうだけどww その前にユーザが消えてしまう(´Д⊂)
てか就活のアピールポイントになるので本腰を入れよう……。
March 08, 2007
はてブのおすすめタグの大文字小文字を自分のタグと合わせる 21:30
- Permalink
- Comments (1594)
- Trackbacks (0)
greasemonkey
いいタイトルが思い付かない。はてブでタグ付けるときに↓こうしたい人用の greasemonkeyスクリプトを作った。
( ´Д`)つfixrecommendedtags.user.js
スクリプト名もfixじゃおかしい気がしてきた。まあ英語苦手だし……。
ブックマークするときのおすすめタグは全部小文字なんだよね。 そこで、もしその中に以前自分が付けたタグがあったら大文字小文字をそっちに合わせるスクリプトです。
ブックマークの中に「CSS」と「css」が混在するなんて許せない神経質な人は 多分おすすめタグをクリックせずに自分でわざわざ入れてたと思うんだけど、 これがあればおすすめタグクリックするだけではぴねす!
てか「CSS」とタグ付けしたブックマークも「css」とつけたブックマークも 一緒に検索されることをさっき知ったんだけど。 おかげでこのスクリプトはただの神経質なブックマーカー向けになりましたw
みんな大文字小文字どうしてんだろ。気にせずおすすめタグをクリックするのかな。 「googleanalytics」とか「csrf」とか「ll」とか見にくいだろ、常識的に考えて……。
就活と研究でこんなことしてる場合ではないはずなのにやってるオレおばかさん。
March 09, 2007
この歳になって==と=を間違えるとは 15:40
- Permalink
- Comments (315)
- Trackbacks (0)
JavaScript, greasemonkey
はてブでタグを除外して絞りこむgreasemonkeyで ==と書くところが=となっていたために、 そのページにあるキャプチャ画像のように編集アイコンとかいろいろゴソっと消えてました。
ちょっと前に直したんだけど、もし使ってくれてる人がいた場合 そういうことですのですみませんでしたという告知エントリ。
March 11, 2007
ActiveRecordを単体で利用する時にテストでfixtureを使うには 23:42
- Permalink
- Comments (1592)
- Trackbacks (0)
Ruby, ActiveRecord
ActiveRecordを単体で使うときってのは、
モデル自体はrequire "active_record"でいいわけだけど
テストでfixture使おうと思ったらどうなるんだろうと思ってちょっと調べたのでメモ。
絶対忘れるからね!
ActiveRecord::Base.establish_connectionは今まで
ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:host => "localhost",
:username => "myuser",
:password => "mypass",
:database => "somedatabase"
)
みたいにオレはやってたんだけど、これじゃfixture使うにはダメみたい。
こうする。
ActiveRecord::Base.configurations = YAML.load_file(File.dirname(__FILE__) + "/database.yml") ActiveRecord::Base.establish_connection
ここのdatabase.ymlはRailsのと同じ。まあdevelopment/test/productionでなくてもいいけど。
どれを使うかはRAILS_ENVで切替える
(RAILS_ENVをdatabase.ymlから読んだハッシュのキーにするわけですな)。
だからRAILS_ENVはestablish_connectionする前にセットしておかないといけない。
忘れるとActiveRecord::AdapterNotSpecified例外が投げられる。
これで準備が整ったので、テストでfixturesを使いたいなら
いつものに加えてrequire "active_record/fixtures"でおk。
1 $:.unshift File.dirname(__FILE__) + "/../prog" 2 require "rubygems" 3 require "test/unit" 4 require "active_record" 5 require "active_record/fixtures" 6 7 RAILS_ENV = "test" 8 require "connection" 9 10 require "morph" 11 12 class MorphTest < Test::Unit::TestCase 13 self.fixture_path = File.dirname(__FILE__) 14 self.use_instantiated_fixtures = true 15 16 fixtures :morphs 17 18 def test_load_fixtures 19 assert @morph1 20 assert_equal "aa", @morph1.pos1 21 end 22 end
まだこれしか試してないけど、fixture読めてるんできっといいんだろう。
ちなみにrequire "connection"で上に書いた
ActiveRecord::Base.establish_connectionをしてる。
今後モデルが増えるようなら、1〜8行目と13, 14は別ファイルに追い出しちゃえばいいね。
あー結局なんも作ってないから今日も研究進んでないけどまあいいや。
そう言えばRailsのdatabase.ymlはERB経由するんだね。豆知識フエタ\(^o^)/
March 12, 2007
スパム2 05:37
- Permalink
- Comments (370)
- Trackbacks (0)
blog, JavaScript
某サイトのコメントスパムやトラックバックスパムの件だけど、 コメントのほうはprototype.jsによるpostだけ通すようにした。Rails的にはxhr?。 これはリクエストに以下のヘッダがあるかないかをただ見てる。
X-Requested-With: XMLHttpRequest
すでにJavaScript必須な部分があるからこれでいいや。 今まで来てたスパムは完全に蹴ることができた。 まあ仕様変更直後だから当り前だけど……><
スパマーがこれを偽装するのは簡単だけど、 そしたら独自のヘッダ使えばいいだろうし。
そのときのためにメモっとくか……。最近記憶力ないんだ……。
new Ajax.Request(path, { method: 'post', requestHeaders: [ 'key', 'value', ... ], ...});
なんでrequestHeadersは配列なんだろうね……。
あとトラックバックスパムは参照リンクの有無を見るようにした。 これでも稀にくるみたいだけど、まあ効果はかなりある。
