顯示具有 wye - Sharer 標籤的文章。 顯示所有文章
顯示具有 wye - Sharer 標籤的文章。 顯示所有文章

2013年11月15日 星期五

使用Greasemonkey脚本彻底摆脱BT工厂下载弹窗

今天有空,所以更新一下多年没有动过的博客。
事情是这样的……
正是因为今天有空,所以我为了陶冶情操,文化交流网站‘BT工厂’看了看最近更新的新的文化交流内容……
然后呢,我一如既往的点开了很多很多的文化交流种子下载页……
但是把这些下载页的种子全都下载下来是一件很痛苦的事情!
来看一下代码:
<form action="../down.php" method="post">
  <input type="hidden" value="torrent" id="type" name="type" />
  <input type="hidden" value="#######" id="id" name="id" />
  <input type="hidden" value="#######" id="name" name="name" />
  <input type="submit" value="  下 载 /  down  " onclick="openpage()" class="round_box" id="down_btn"  />
</form>
可以看到,这个下载按钮被点击时不但会提交表单开始下载文件,同时还会触发openpage函数。
这个函数定义如下: 
function openpage() {
var rand=Math.floor(Math.random()*2+1);
switch(rand)
{
 case 1:
 window.open('http://??.?????.biz/','','scrollbars=1,resizable=1').blur();
 break;
 case 2:
 window.open('http://??.?????.info/','','scrollbars=1,resizable=1').blur();
 break;
 default:
 break;
 }
window.focus(); 
}
 
这才是最蛋疼的!每下载一个种子文件都要经过如下操作:
1点击一下下载按钮
2关闭弹出来的网站主页
3下载文件
4关闭网页

如果只是一个种子还好,但是我每次可都是要下载大量种子的啊!折腾不起啊啊啊啊!
然后我就去下载了greasemonkey插件然后开始折腾用户js脚本……
话说firefox这一点就不如换芯之前的opera方便,opera原生支持User CSS和User JS! 

解决弹窗的话很容易,只需要一句:
document.getElementById("down_btn").onclick = null;
 
好吧,即便如此还是太麻烦了…… 
毕竟有那么多种子等着我去下载学习呢,要是不用点击下载按钮就好了……
这也好说,这么一句就够了!
document.getElementsByTagName("form")[0].submit();
嗯…… 
这下好多了,尤其是我还在FireFox里设置了种子文件默认是保存操作,省得我一下一下点了。

不过好像还是有点不爽啊,既然都自动下载了,
那么下载了之后我又何必非要很傻逼的去手动关掉那些下载页!我想要它自动关掉!
于是就有了如下最终版代码:
// ==UserScript==
// @name        AntiBTGCPop&AutoDownload
// @namespace   wye-ANGER.blogspot.com
// @description AntiBTGCPop & AutoDownload
// @include     http://www3.*domn.com/*/file.php/*.html
// @include     http://www3.*down.info/*/file.php/*.html
// @include     http://www3.*down.com/*/file.php/*.html
// @version     1
// @grant       none
// ==/UserScript==

document.getElementsByTagName("form")[0].submit();
document.getElementsByTagName('html')[0].innerHTML
    = document.getElementsByTagName('form')[0].outerHTML;
var http_request = new XMLHttpRequest();
document.getElementById("down_btn").onclick = null;

function onResponse()
{
    if(http_request.readyState!=4) return;
    if(http_request.status!=200)
    {
        alert("Problem retrieving XML data");
        return;
    }
    //assume browser cached torrent
    setTimeout("window.close()",1000);
}

var nameval = document.getElementById("name").value;
var idval = document.getElementById("id").value;
var arg="type=torrent" +"&name="+nameval+"&id="+idval;

http_request.onreadystatechange=onResponse;
http_request.open('POST',"../down.php", true);
http_request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
http_request.send(arg);

这个脚本需要配合两项FireFox来使用
1.about:config中的dom.allow_scripts_to_close_windows需要设置为true以允许js关闭窗口
2.火狐应设置自动保存种子文件而不询问(没试过,或许不这么设置也可以用)
使用这个脚本之后,只需要按住Ctrl点击下载页连接,下载页在后台打开后会自动开始下载,然后自动关闭下载页!
这下终于可以痛痛快快的进行文化交流了~
 
找脚本的同学看到这里就够了,如果对代码还有点兴趣可以继续看。 
 
稍微解释一下上面的脚本吧。
一开始先对form进行submit()先通过能触发下载的正规渠道发出请求。
然后问题又来了,从浏览器发出请求到服务器完成响应的间隔时间是不可预测的!
如果窗口关早了,服务器还没来得及响应请求,那文件都没来得及开始下载。 
对于BT工厂这样的文化交流网站更是如此!慢起来的时候那真是^$#&*@(&#$*@)&$*#@!
 
那么就需要简单的判断一下服务器是否已经响应了下载请求。
对此,我的解决方案是先调用submit()走正规途径提交表单。
然后通过XMLHttpRequest提交一个同样的表单。 
这时假设这两次提交表单对应的HTTP请求被浏览器缓存优化,
认定多出来的一次请求不会造成太多的网络负担(本来一个种子文件也不会造成多少负担)。 
假定等后提交的请求服务器完成全部响应时,前一个通过submit()发送的请求已经至少完成了初步的响应。
那么此时关闭窗口应该至少浏览器已经开始下载了。
 
至此,大功告成~ 

2009年9月12日 星期六

化物语 第十话OP「千石撫子-恋愛サーキュレーション」



歌詞:
せーの


でも そんなんじゃ だーめ
もう そんなんじゃ ほーら
心は進化するよ もーっと もーっと


言葉にすれば 消えちゃう関係 なら
言葉を消せばいいやって 思ってた? 恐れてた?
だけど あれ? なんか 違うかも
千里の道も一歩から 石のように硬いそんな意志で
塵も積もれば やまとなでしこ? し抜きで いや 死ぬ気で


ふわふわり ふわふわる あなたが 名前を呼ぶ それだけで宙へ浮かぶ
ふわふわる ふわふわり あなたが笑っている それだけで笑顔になる


神様 ありがとう 運命の悪戯でも
めぐり合えたことが 幸せなの


でも そんなんじゃ だーめ
もう そんなんじゃ ほーら


心は進化するよ もーっと もーっと


そう そんなんじゃ いやーだ
ねぇ そんなんじゃ まーだ


わたしのこと見ていて ずーっと ずーっと

高清MP4及截取版MP3下载:
http://www.jsharer.com/blog/282322.htm


资源引用页:http://bbs.levelup.cn/showtopic-864055.aspx

2009年5月8日 星期五

[MP3]轻飘飘的时间 TV Size

轻音少女 K-ON 第六话 插曲

桜高軽音部
平沢唯(ひらさわ・ゆい)
秋山澪(あきやま・みお)


キミを見てるといつもハートDOKI☆DOKI


揺れる思いはマシュマロみたいにふわ☆ふわ

────────ここまでアニメに登場────────

いつもがんばるキミの横顔 ずっと見てても気にしないよね

夢の中なら二人の距離 縮められるのにな

ああカミサマお願い 二人だけのDream Timeください

お気に入りのうさちゃん抱いて

今夜もオヤスミ♪

ふわふわ時間 ふわふわ時間


MP3文件[320kbps]下载:http://www.jsharer.com/file/1194878.htm

注:以下图片并不代表博主个人观点~

2009年4月10日 星期五

资源分享 [090327] BALDR SKY Dive1 Lost Memory 初回版 torrent







本来是想分享W.L.O. 世界恋愛機構的,可是发现HLoli上已经有下了,那就算了吧。
这东西同学有下,我只是看了一下Movie,画风真的很棒,Ending的那段钢琴曲也还不错~
是个集机战与Gal于一身的东东。
官方网站:http://www.web-giga.com/baldrsky/
种子文件:http://www.jsharer.com/file/1148575.htm