`
Snow_Young
  • 浏览: 29217 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

写了一个GreaseMonkey的 clickclickclick.com插件(再次发布)

阅读更多

之前是09年3月30日发布的,最近再一看博文不翼而飞,再补发一篇吧。另外谴责一下网上抄袭的,带上我的署名你能死吗?本来就是小众向的博文,写下来可不是为了给你不带署名转载的。

 

下面是重发的内容了,去除了一些可能会被HX的词……

 

www.clickclickclick.com是一个很YD的网站,玩法很简单,就是用鼠标狂点,然后点一定次数之后就提交成绩。游戏成绩和国家排名有 关,这个貌似关乎到玩家的爱国情感,但是据说这个网站故意将匈牙利、日本和TAI WAN省放到很高的名次,然后忽悠国人去点击(利用了我们的爱国情感啊……),我也稍微证实了一下,一个赛季刚开始,其他国家都还是0的时候,日本和匈牙利就已经有几百万的分数了。闲话莫讲,咱们还是谈技术吧。

 

// ==UserScript==
// @name ccc
// @namespace sny.ccc
// @include http://www.clickclickclick.com/default.asp*
// @include http://www.clickclickclick.com/
// ==/UserScript==

var clickButton;
var maxCountCon;
var snyCount;
var maxCount;
var getMaxCountEvent;

window.addEventListener('load', funcionPrincipal, false);//页面载入完毕后回调funcionPrincipal函数

function $(id) {//写这个函数已经成为习惯了
	return document.getElementById(id);
}

function funcionPrincipal() {
	var startButton = document.createElement('a');//开始按钮,其实是超链接,点击之后开始自动狂点
	startButton.innerHTML = 'SSSSSSSTTTTTTTAAAAAAARRRRRRRTTTTTTT';
	startButton.setAttribute('href', 'javascript:document.getElementById("maxCount").innerHTML=cklmt;void(0);');//尝试了很久直接调用原页面的js域中的变量或方法,但发现怎么都不能成功,最后只好这么做了。
	$('topbar').appendChild(startButton);
	startButton.addEventListener('click', init, false);
	var maxCountCon = document.createElement('span');//这里放置允许的最大点击量
	maxCountCon.id = 'maxCount';
	$('topbar').appendChild(maxCountCon);
}

function fireAEvent(ele, type) {//调用事件,通过GM很难调用原页面的函数,最好只从Element的事件方向处理
	var evt = document.createEvent("Event");
	evt.initEvent(type, true, false);
	ele.dispatchEvent(evt);
};

function init() {
	var clickImg = $('clickimg');
	clickButton = clickImg.parentNode;
	
	for (var j = 5; j >= 0; j--) {//这一部分是对付cheat机制用的,用程序模拟点击鼠标,考虑到z轴的问题。
		var buttons = document.getElementsByTagName('button');
		for (var i = buttons.length - 1; i >= 0; i--) {
			if (buttons[i].style.zIndex == j && buttons[i].style.left == "") {
				if (buttons[i] == clickButton) {
					j = -1;
					break;
				}
				fireAEvent(buttons[i], 'mouseup');
			}
		}
	}
	
	maxCountCon = $('maxCount');
	maxCount = parseInt(maxCountCon.innerHTML);//获得最大允许点击次数
	snyCount = 0;
	getMaxCountEvent = window.setInterval(getMaxCount, 100);
}

function getMaxCount() {
	if (isNaN(maxCount)) {//等到获得了最大允许点击次数之后才开始自动点击
		maxCount = parseInt(maxCountCon.innerHTML);
	} else {
		window.clearInterval(getMaxCountEvent);
		window.setTimeout(autoClick, 110);
	}
}

function autoClick() {
	if (++snyCount >= maxCount) {//当达到最大次数之后自动提交成绩
		var tot = $('addtot2');
		fireAEvent(tot, 'mouseup');
		tot = $('mytot3');
		fireAEvent(tot, 'mouseup');
		return;
	}
	window.setTimeout(autoClick, 110);
	fireAEvent(clickButton, 'mouseup');//模拟鼠标的mouseup事件
}

 

经过了无数次的被banned,然后狂换代理,最后终于成功了,前后大概用了整整5个小时。还不错,第一个像样的GreaseMonkey userScript。

 

 

再次声明,原创文章,转载请注明来源:http://sny7.iteye.com,谢谢!

0
0
分享到:
评论
2 楼 Snow_Young 2010-03-10  
joyfun 写道
//尝试了很久直接调用原页面的js域中的变量或方法,但发现怎么都不能成功,最后只好这么做了。  

这个都是原来的那个 GraseMonkey入门教程给害的  现在变动挺大的 网上很多都是基于2005年的那个版本 去年研究过 官方wiki上就有用法  现在可以直接 unsafewindow 就可以调用原页面js的变量和方法了 当初也找了好久


谢谢你的提示,去研究下,呵呵
1 楼 joyfun 2010-02-19  
//尝试了很久直接调用原页面的js域中的变量或方法,但发现怎么都不能成功,最后只好这么做了。  

这个都是原来的那个 GraseMonkey入门教程给害的  现在变动挺大的 网上很多都是基于2005年的那个版本 去年研究过 官方wiki上就有用法  现在可以直接 unsafewindow 就可以调用原页面js的变量和方法了 当初也找了好久

相关推荐

    firefox插件greasemonkey-0.8.20080609.0-fx_PConline.xpi

    firefox插件greasemonkey-0.8.20080609.0-fx_PConline.xpi

    GreaseMonkey.xpi

    FIREFOX专用GreaseMonkey.xpi

    Firefox用户脚本管理器(Greasemonkey) v1.10火狐插件.rar

    Greasemonkey是Mozilla Firefox的一个附加组件。它让用户安装一些脚本使大部分HTML为主的网页于用户端直接改变得更方便易用。随着Greasemonkey脚本常驻于浏览器,每次随着目的网页打开而自动做修改,使得运行脚本的...

    深入浅出Greasemonkey.pdf

    Greasemonkey是一款Firefox浏览器扩展程序,它允许用户通过编写或安装JavaScript脚本来修改网页内容,从而提升网页的可用性和功能性。Greasemonkey本身不直接执行任何改变,而是需要用户安装特定的脚本——用户脚本...

    Greasemonkey Hacks

    Greasemonkey Hacks.chm

    greasemonkey-4.11.xpi

    greasemonkey-4.11.xpi

    火狐常用xpi插件打包下载

    包括下列常用插件: adblock_plus-2.2.3-tb+an+sm+fx.xpi autoproxy-0.4b2.2011041023-fx+tb+sm.xpi betterprivacy-1.68-fx.xpi email_notifier-0.6.2-fx.xpi feedly-10.2-fx.xpi firebug-1.11.2-fx.xpi foxdie-15-...

    greaseMonkey

    GreaseMonkey是一款非常著名的浏览器扩展,专为 Mozilla Firefox 设计,同时也支持其他基于 Firefox 内核的浏览器。这款扩展允许用户编写自定义的 JavaScript 脚本来修改网页内容,实现个性化浏览体验,提供了对网页...

    convert_scriptish-config.json_to_greasemonkey-config.xml:将 scriptish-config.json 转换为 Greasemonkey 的 config.xml

    Greasemonkey 要求gm_scripts/config.xml具有每个用户脚本的元数据。 此脚本解析scripts_directory/scriptish-config.json (与config.xml对应的脚本)并打印 Greasemonkey 的config.xml 。 注意:此脚本转换刚好...

    深入浅出 Greasemonkey优化

    Greasemonkey是一个专为Mozilla Firefox设计的浏览器扩展插件,它允许用户通过自定义JavaScript脚本来改变网页的行为与功能。通过这种方式,用户可以定制浏览体验,例如调整页面布局、添加额外功能、甚至修复网页中...

    greasemonkey

    greasemonkey-0-8-20090123-1-en-win-

    深入Greasemonkey

    Greasemonkey是Firefox的一个插件,它允许用户通过编写JavaScript脚本来修改网页的动态内容,从而实现个性化定制和功能增强。这本书是官方发布的开发手册,旨在帮助用户理解和掌握Greasemonkey的使用和开发技巧。 ...

    火狐工具 web插件

    8. **社区支持**:Firefox有一个活跃的开发者和用户社区,他们分享和维护着各种插件。通过社区,用户可以找到问题的解决方案,或者参与到插件的改进和开发中。 9. **隐私政策**:每个插件都有自己的隐私政策,用户...

    www.bing.com_search_english:自动重定向到英文 Bing 搜索页面的 Greasemonkey 脚本

    标题 "www.bing.com_search_english" 提供了一个关于自定义网页体验的脚本,它是一个Greasemonkey脚本,旨在将用户对Bing搜索引擎的访问自动重定向至其英文版本。Greasemonkey是Firefox浏览器的一个扩展,允许用户...

    深入浅出Greasemonkey,油猴脚本入门

    Greasemonkey 是一个 Firefox 扩展,它具有通过编写脚本来改变被访问网页的功能。使用它,能使您访问的网站更便于阅读或者更便于使用。使用它,您能修复网页渲染的缺陷,而无须烦扰网站管理员。使用它,您能让网页更...

    topic-highlighter:用于WordPress.org插件和主题主题荧光笔的Tamper-GreaseMonkey脚本

    WordPress.org主题荧光笔关于该项目这是一个与TamperMonkey或GreaseMonkey一起使用的用户脚本,用于突出显示WordPress.org上插件和主题的支持主题。 通过将它们分为三个可操作的类别来实现此目的: 已解决的主题超过...

    hwz:用于forums.hardwarezone.com.sg 的GreaseMonkey 脚本

    1. **GreaseMonkey**: GreaseMonkey是Firefox浏览器的一个插件,它允许用户安装JavaScript脚本来修改网页的行为。这些脚本可以自定义页面布局,添加新功能,或者优化已有功能,使得用户能根据自己的需求定制浏览器的...

    nytimes-greasemonkey:一个用于禁用左右箭头键以跳过 NYTimes.com 上的文章的 Greasemonkey 脚本

    针对纽约时报(NYTimes.com)网站阅读文章时遇到的左右箭头键跳转问题,开发者创造了一个名为"nytimes-greasemonkey"的Greasemonkey脚本,它允许用户禁用这些键,以提供更加沉浸式的阅读体验。 Greasemonkey是Fire...

    深入浅出_Greasemonkey

    Greasemonkey是一个在Firefox浏览器上运行的扩展程序,通过允许用户在客户端执行JavaScript代码来改变网页的表现形式或功能。本书详细介绍了Greasemonkey的基本使用方法和高级技巧,包括安装和配置、编写脚本、调试...

    浏览器重定向插件更新文件

    此外,`.conf` 和 `.css` 文件的命名结构(如 `AC-baidu-重定向优化百度搜狗谷歌必应搜索_favicon_双列.user.js-<hash>-<filename>`)表明这些文件是同一个插件的不同组件,其中 `<hash>` 部分可能是版本控制或文件...

Global site tag (gtag.js) - Google Analytics