このサイトについて

Refererを削除するスクリプト

Refererを削除するスクリプト

荒らし,というほどでもなかったのですが,同一リファラから絨毯爆撃的にリクエストが来ていました。なんだか気分が悪かったのでスクリプトでざっくり削除することにしました。

RefererPluginを使っているなら,以下のようなコードで特定のRefererを削除できます。:

#RefeferPluginインスタンスを取得
refp = container.referer_plugin
#削除するURL(部分一致)を設定
delurl = 'http://foo.bar.com/'

delcnt = 0
#RefererのついているエントリのIDを取得
for d in refp.referer_ids():
    idx = 0
    dell = []
    #各エントリからRefererオブジェクトを取得
    for refobj in refp.getReferer(d['entry_id']):
        if refobj.referer_url().find(delurl) != -1:
            #削除すべきRefererが見つかったので削除リストにappend
            dell.append(idx)
            delcnt = delcnt + 1
        idx = idx + 1
    if len(dell) > 0:
        #削除リストが空でなかったら削除を実行
        refp.manane_deleteRefererURL(d['entry_id'],dell)

print "%s referer deleted." % (delcnt)

return printed

まあこんなせこいことしてgoogleのランクが上がってもも,コンテンツに魅力がないと固定客がつかないので,長期的に見るとお客さんは離れてゆくんだけどね。ご苦労様です,本当に。

2010-08-27 04:27