Greasy Fork

Greasy Fork is available in English.

露天拍賣登入便(可自動登入)

在露天拍賣(www.ruten.com.tw)登入時,可使用 Enter 直接登入,免去辨識圖片登入按鈕位置,亦可修改本 Script 輸入帳號密碼進行自動登入。

当前为 2014-10-15 提交的版本,查看 最新版本

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name           露天拍賣登入便(可自動登入)
// @namespace      wsmwason.ruten.easylogin
// @description    在露天拍賣(www.ruten.com.tw)登入時,可使用 Enter 直接登入,免去辨識圖片登入按鈕位置,亦可修改本 Script 輸入帳號密碼進行自動登入。
// @include        https://member.ruten.com.tw/*
// @require        http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js
// @version        1.0
// @auther         wsmwason
// @grant          none
// ==/UserScript==

/**
 * Update:
 *   2012/10/15
 *
 * Authors:
 *   露天拍賣的登入實際上需要 Captcha 的驗證,只是做成了圖片位置座標變換,
 *   需要以肉眼判斷座標位置,此 Script 使用 HTML5 canvas 讀取圖片位置,
 *   將可透過 Enter 直接進行登入。
 *   這年頭了露天拍賣居然還可以使用 big5 撐到現在,實在厲害。
 *
 * Changelog:
 *
 *  2014/10/15 Ver 1.0
 *  		-- 更新 2014/10 新版露天 Captcha 驗證方式
 *  		-- 引用 jquery 1.7.2
 *
 *  2014/06/14 Ver 0.6
 *  		-- 改放 Greasy Fork
 *
 *  2012/06/22 Ver 0.5
 *  		-- 提供露天拍賣自動登入
 *  		-- 提供露天拍賣免辨識圖片登入按鈕位置直接以 Enter 登入
 */
 
// 設定帳號 
var userName = '';
// 設定密碼
var passWord = '';
// 設定是否自動登入
var autoLogin = false;

// 取消一些沒用的檢查
var overwriteScriptCode = new Array();
overwriteScriptCode = [
  'function noenter(event){ return true; }',
  'function img_reload(){ }'
];
var script = document.createElement('script');
script.innerHTML = overwriteScriptCode.join('\n');
document.getElementsByTagName('head')[0].appendChild(script); 

// 讀取驗證圖片寫入 Captcha
var captchaX, captchaY = 0;
var img = new Image();
var context;
var canvas = document.createElement('canvas');
img.onload = function() {
  canvas.width = img.width;
  canvas.height = img.height;
  canvas.getContext('2d').drawImage(img, 0, 0);
  context = canvas.getContext("2d")
  context.drawImage(img, 0, 0);
  var imageData = context.getImageData(0, 0, canvas.width, canvas.height);

  var findPixel = false;
  for(x=0;x<=canvas.width;x++){
    if(findPixel==true) break;
    for(y=0;y<=canvas.height;y++){
      var index = (y*imageData.width + x) * 4;
      var red = imageData.data[index];
      var green = imageData.data[index + 1];
      var blue = imageData.data[index + 2];
      var alpha = imageData.data[index + 3];

      if(red==4 && green==2 && blue==4 && alpha==255){ 
        captchaX = x;
        captchaY = y;
        findPixel = true;
        break;
      }
    }
  }

  $('#btn_login').after('<input type="hidden" name="btn_login.x" value="'+captchaX+'" />');
  $('#btn_login').after('<input type="hidden" name="btn_login.y" value="'+captchaY+'" />');

  if(userName!='' && passWord!='' && autoLogin==true){
    var $form = $('form[name="main"]');
    $form.attr('action', 'login.php?refer=https%3A%2F%2Fmember.ruten.com.tw%2Fuser%2Flogin.htm');
    $form.submit();
  }
  
};

// 2014/10 版本 captcha 方式
$.ajax({
  url: 'image_key.php',
  dataType: 'json',
  success: function(data){
    $('#userid').focus();
    $('#captcha').val(data.key);
    $('#btn_login').attr('src', 'image.php?key='+data.key);
    img.src = 'image.php?key='+data.key;
  }
});