阅读:11939回复:37
百度免转向用户脚本 2012-09-30更新
简介
九月初百度开始加密搜索结果,每次点击百度的搜索结果,浏览器都会访问百度的服务器进行转向。在花费时间流量转向的同时,转向链接中可能还包含其它的信息(IP、浏览器、操作系统类型及版本等)。这个脚本的作用就是把这个转向链接替换为真实的链接。 支持的平台 需要支持FileReader、Blob、Typed Array的浏览器。推荐使用以下组合。 Firefox: Greasemonkey、Scriptish Chrome: Tampermonkey (原生的Chrome用户脚本功能不支持报错功能。) 限制 由于百度的加密原理没有完全破解,所以部分网址不能被替换。在不能替换或替换错误的情况下,可以通过点击报错按钮报告这一情况。我会记录下有问题的加密链接并据此开发更新版本。 用途和许可证 本脚本免费供浏览器用户使用,但暂时并不开源。原因有三: 1. 加密原理没有完全搞清 2. 不想被用作SEO、采集等用途 3. 不想逼百度更换加密算法 ====== Known Issues ====== * 不能转换过长的网址。 ====== Changelog ======= 0.2 2012-09-30 * 使用Typed Array,所以解码速度变快了 * 使用GB18030进行解码,支持未经escape的中文字符 * 使用Asynchronnous calls,减少界面卡顿时间 * 遇到不支持GM_*函数的情况下,不再报错(建议使用测试通过的用户脚本管理器) * 改写部分代码,改进性能 0.1.1 2012-09-29 * 可以破解更多的网址了 0.1 2012-09-26 * 最初发布 安装地址 http://userscripts.org/scripts/source/149118.user.js |
|
1楼#
发布于:2012-09-26 22:27
|
|
|
2楼#
发布于:2012-09-26 22:27
|
|
3楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
百度这招就是防止其他搜索直接利用百度搜索结果。一攻防战的浑水。扩散太大,恐怕百度就改算法了。一种变通思路,利用GreaseMonkey把百度加密的链接,访问一遍,获取HTTP的头部,得到揭秘后的URL,然后替换掉搜索结果页的链接。 用户打开搜索结果页后还要看一下。几秒钟时间就把链接转了,也比较透明吧。 只是访问百度跳转服务器的请求过多,不知道会不会被百度封。 |
|
4楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
这是回音你懂吗? 这是回音你懂? 这是回音你? 这是回音? 这是回? 这是? 这? ? |
|
|
5楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
fiag:百度这招就是防止其他搜索直接利用百度搜索结果。一攻防战的浑水。扩散太大,恐怕百度就改算法了。 是的,代码混淆的部分原因就是不想逼得百度改算法。这段脚本的服务对象只是普通用户,而不是想被用作SEO、采集等目的。当然,代码很短,反混淆也是可能的。不过有心的人不必破解我的脚本,直接破解百度的算法就好,说不定做得还比我好呢。 至于curl出response的头部这种方法,用作采集、SEO的时候比较make sense。一般用户使用的时候额外造成许多http请求更加不合理,何况浏览器对向相同域的请求有并发限制,也是不实用的原因之一。 |
|
6楼#
发布于:2012-09-26 22:27
|
|
7楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
没必要混淆,增加人为障碍是小事,eval的性能损失是有目共睹的再说你未免太 [s]高估[/s] 小看 百毒的服务器了,度受在怎么说也是中文最大的(或者说曾经?)搜索引擎,就算你个人pc以连接数上限卯足了劲post,估计那边的服务器也就1%的流量波动 没说错的话你用的是Javascript Obfuscator吧,试试看把你的代码po到这里面然后点一下Beautify |
|
|
8楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
白左:没必要混淆,增加人为障碍是小事,eval的性能损失是有目共睹的 eval的代价我了解。直觉上感觉并不会影响太多,因为算法里真正解密的部分不多,DOM操作才是又多又慢的主。等着我做个测试看一下性能差距有多大。 采用混淆的确是下策。不过没有办法,如果这段解码程序被其它地方使用,百度可能狗急跳墙改变算法。还有就是我并没有完全破解百度的加密方法,所以不想公开不完美的作品。我已经留下email,谁想参与剩下的破解工作我非常欢迎。 并发链接限制并不是在百度那边,而是在用户这边。浏览器限制向同一domain的并发链接数量不超过一个特定数,多余的要排队。 |
|
9楼#
发布于:2012-09-26 22:27
Re: 百度免转向用户脚本
反盗链一下不就行了。mason或者反盗链的扩展都可以。 |
|
10楼#
发布于:2012-09-26 22:27
|
|
|
11楼#
发布于:2012-09-26 22:27
|
|
12楼#
发布于:2012-09-26 22:27
|
|
13楼#
发布于:2012-09-26 22:27
|
|
14楼#
发布于:2012-09-26 22:27
很好的脚本,百度现在也学Google,劫持真实的搜索结果
|
|
|
上一页
下一页