锁定老帖子 主题:淘宝网防盗链图片下载源码 -- 勿拍
精华帖 (0) :: 良好帖 (0) :: 新手帖 (14) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-06-02
# == Synopsis # # Taobao tool all in one. # # == Author # fujun # 2011.06.01 # # == Copyright # Copyright (c) 2010 www.esoMei.cc Inc. # All rights reserved. STDOUT.sync = true; STDOUT.flush STDERR.sync = true; STDERR.flush require 'open-uri' module Taobao class Tool def self.get(url) headers = {"Referer" => "http://mm.taobao.com/"} open(url, headers) do |fin| size = fin.size open("/var/tmp/#{url.split('/').last}", "wb") do |fout| while buf = fin.read(1024) do fout.write buf STDOUT.flush end end puts "[#{Time.now().to_s(:db)}] [OK] :url => #{url}, :size => #{size / 1024}KB." end end end end 使用方法: 单张图片:Taobao::Tool.get('http://img04.taobaocdn.com/sns_album/i4/T11MKbXn4vXXb1upjX.jpg') 多张图片: arr = ['url1', 'url2'...] arr.map { |url| Taobao::Tool.get(url) } 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-06-02
如果tb做Ip限制的话就不行了
|
|
返回顶楼 | |
发表时间:2011-06-02
genggeng 写道 如果tb做Ip限制的话就不行了
事实上,他不敢做,也没法做,网站访问量太大了。像学生公寓这种成百上千号人共用一个公网IP的。他一做限制,那这些人就死了。 另外,他做了IP限制也没有关系,可以启用代理库。 |
|
返回顶楼 | |
发表时间:2011-06-03
open-uri
不支持ssl连接,不晓得如何解决。 |
|
返回顶楼 | |
发表时间:2011-06-07
随便弄个什么加密的字符串跟在请求里,你这个就歇了。
http://wiki.nginx.org/HttpAccessKeyModule |
|
返回顶楼 | |
发表时间:2011-06-07
poppk 写道 随便弄个什么加密的字符串跟在请求里,你这个就歇了。
http://wiki.nginx.org/HttpAccessKeyModule 不太现实。这种静态类的资源放在cdn上了,在url里面不会加?字符串的,否则会穿透cdn回源。 |
|
返回顶楼 | |
发表时间:2011-06-07
写的挺好的
|
|
返回顶楼 | |
发表时间:2011-06-09
防盗链, 是为了防止cdn付出过高的流量成本。 弄个程序, 你不是大规模抓取, 抓的到几个呀。
|
|
返回顶楼 | |
发表时间:2011-06-09
sdh5724 写道 防盗链, 是为了防止cdn付出过高的流量成本。 弄个程序, 你不是大规模抓取, 抓的到几个呀。
mm.taobao.com的图片有80万。粗略估计了下是100G。要下个一周左右 |
|
返回顶楼 | |
发表时间:2011-06-10
zfj.rails 写道 sdh5724 写道 防盗链, 是为了防止cdn付出过高的流量成本。 弄个程序, 你不是大规模抓取, 抓的到几个呀。
mm.taobao.com的图片有80万。粗略估计了下是100G。要下个一周左右 CDN 是按峰值计费的多。 |
|
返回顶楼 | |