加载中…
个人资料
东东
东东
  • 博客等级:
  • 博客积分:0
  • 博客访问:48,505
  • 关注人气:12
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

研究成功!快速下载google books的方法!

(2008-11-02 12:46:18)
标签:

教育

很早以前就垂涎google books里的那些数量可观的好书了,也曾动过歪脑筋想窃下来,可惜技术不够,又耐不住将一张张图片保存下来的繁琐,就只好做罢。谁料昨晚见一贴子,提到世界上果然存在着这么一个Google Books下载工具,遂重燃旧梦,按图索骥,摸到了这个页面,认真拜读之,受益颇多,却不想造化弄人,其所附软件链接竟然无效,又要受邀才能注册论坛,又要发啥子注册码,麻烦死了!转念一想:恐怕这东西并非独此一家吧?乃以“google books downloader”为关键字在google中多方求索,然所觅得者皆为脑残,灰心丧气之际终于找到一个http://book.huhiho.com/,试以一书url填之,果然悠哉游哉地解析地址了,我于是大喜,打开其中链接一看,果然可行。

我没见过那个“Google Books下载器”的模样,不过看作者的说明大致可以判断出它是模拟IE检索书籍,然后捕捉其中的图像地址,这个方法缺点是明显的,就像作者说的那样:“每次看一本书时,在可以预览的页里,google books会随机删掉一些页,所以本次没有下载的页,下次可能就能下载了。一本书,我一般会反复下载4、5次,才能下全。”而这个Google Book Downloader比较强,我看了一下,基本上没有漏页的,应该就不用辗转下载多次。不过当我按照它的说明下载的时候,问题出现了:大概是google为防止一个ip在同个站点短时间大量下载图片,我flashget下了五六个图片之后就再也不动了,报道“找不到文件地址”。

按照那个下载器作者的说法,我想到应该换多个域名来尝试,于是找来一个比较全的google全球网站域名地址,将其中有Google Books服务的站点地址都记录下来,计有三十多个,如”books.google.se”、”books.google.ru”、”www.google.de”等。思路就是用这三十多个地址随机替代Google Book Downloader里解析出来的地址中的“books.google.com”,这样估计就可以减少google的怀疑了。这种工作自然要交给Firefox+GreaseMonkey插件来完成!以下简要说明步骤:

研究成功!快速下载google <wbr>books的方法!

1.解析书籍的地址,等“完成”警告弹出后选中自第一页至最后一页的链接,击右键,选择“查看选中部分源代码”,复制此段代码。

2.在自己电脑磁盘任意一个位置建立一个名为google-books.htm的文件,用记事本或者其它文本编辑器打开它,粘贴步骤1选中的源代码,保存文件。

3.在Firefox中打开google-books.htm,右键点击GreaseMonkey图标,选择“新建用户脚本”,如下所示:

ss2.png

名字、名字空间、描述任意填写,然后确定,在打开的文本编辑器中粘入以下代码:

 //created by bigbing (delphi.bird@gmail.com)
//2008.10.05
var GoogleBooksHost=new Array (”books.google.nl”,”books.google.se”,”books.google.ru”,”www.google.de”,”www.google.co.uk”,”www.google.co.jp”,”www.google.com.tw”,”www.google.com.hk”,”www.google.es”,”www.google.fr”,”www.google.be”,”books.google.co.kr”,”books.google.co.nz”,”books.google.dk”,”books.google.gr”,”www.google.hu”,”www.google.co.in”,”books.google.com.mx”,”www.google.co.za”,”books.google.at”,”www.google.com.bd”,”books.google.az”,”books.google.bg”,”books.google.com.by”,”books.google.ch”,”www.google.com.co”,”books.google.com.cu”,”www.google.fi”,”www.google.kz”,”books.google.mn”,”www.google.com.my”,”www.google.com.sg”,”books.google.sk”);
var oLinks=document.getElementsByTagName_r(”a”);
for (var i=0;i<oLinks.length;i++) {
if (oLinks.item(i).host==”books.google.com”)
oLinks.item(i).host=GoogleBooksHost[Math.round(Math.random()*(GoogleBooksHost.length-1))];
}

或者点击下载脚本changegooglebookshost.user.js(该脚本假设google-books.htm放在d盘根目录下)。保存之后刷新该页面,然后用flashget等下载器下载全部链接(线程数设成1个就好),就出现这样的效果:

snapshot.png

书本一页页从世界各地千军万马般向你奔涌而来,是不是很让人感动呢?

4.大概下几十页的时候,下载器又停住不动了,这时候应该考虑换ip,重新拨号、用代理或者VPN都可以达到这种效果,我一般选择用VPN,很快捷方便,一本两三百页的书大概换三四次ip就可以下完了(最神奇的是有一次没有换ip就下载了四百多页,才花了十几分钟!),全选已下载的文件,击右键,重命名->注释作为文件名,再把这些图片按顺序整理成pdf,效果很好。

ss3.png

下次再下载就不用写脚本了,只要把代码拷到google-books.htm中,再用firefox打开就可以直接下载了。页面url中有个w参数很有用,它是指定页宽的,默认是800像素,如果你嫌页面小,可以在编辑器里把所有的w=800替换成诸如w=1200之类的字符。

这个方法很山寨,却非常实用,关键是下载起来速度飞快,因此我今天很兴奋地下了许多书,上天保佑google不要杀了我这篇博文,呵呵。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有