`

ruby 下载文件到本地

    博客分类:
  • Ruby
阅读更多
require 'open-uri'

def downLoadJpg(fileName, uri)
	data = open(uri, 'User-Agent' => 'ruby'){|f| f.read} 
	
	file = File.new fileName, 'w+'
	file.binmode 
	file << data 
	file.flush 
	file.close
end






doc.search('//html/body/card_list/card').each do |card|
		puts(card.text)
		t = card.attribute("t")
		cid = card.attribute("cid")
		puts(t)
		puts(cid)

		fileName = "e:/" + t + ".jpg"
		downLoadJpg(fileName, card.text)
	end




出现错误:

引用
ruby/1.9.1/open-uri.rb:346:in `open_http': 403 Forbidden (OpenURI::HTTPError)




def downLoadJpg(fileName, uri)
	data = open(URI::encode(uri),  "User-Agent" => "Ruby/#{RUBY_VERSION}"){|f| f.read} 
	
	file = File.new fileName, 'w+'
	file.binmode 
	file << data 
	file.flush 
	file.close
end



主要是我在循环里面不断的去打开同一服务器上的不同的文件,就被禁止掉了
分享到:
评论

相关推荐

    ruby上传文件

    自己动手写的几个实用的ruby文件上传功能,有controller、view,database,可以根据自己的需要添加或者减少代码和视图

    ruby开发的基本流程.doc

    Ruby文件的扩展名通常为.rb。编写代码时,需要遵循Ruby的语法规则,并可以利用Ruby丰富的库和框架来简化开发过程。 调试Ruby代码:在编写代码的过程中,可能需要进行调试以查找和修复错误。Ruby提供了多种调试方式...

    Ruby中使用多线程队列(Queue)实现下载博客文章保存到本地文件

    Ruby:多线程下载博客文章到本地的完整代码 代码如下: #encoding:utf-8 require ‘net/http’ require ‘thread’ require ‘open-uri’ require ‘nokogiri’ require ‘date’ $queue = Queue.new #文章列表页数 ...

    watir安装包之一 ruby1

    此文件太大,压缩成两个part,此为Part1 ,两个文件下载后放一起解压缩即可。 watir本地安装的安装文件共六部分,按照一~六安装即可,每一部分重要的内容在描述里面说明,如有疑问,可以留言。

    ruru, 在 Rust 中,编写了本地 ruby 扩展.zip

    ruru, 在 Rust 中,编写了本地 ruby 扩展 Ruru ( Rust ruby ) Rust 中的本机 ruby-扩展 文档文档网站你曾经考虑过重写慢 ruby 应用程序的某些部分?用 Rust 替换 ruby 应用程序,方法按方法,类按类

    ruby使用restclient上传服务器本地文件示例

    使用RestClient上传服务器本地文件 代码如下:url = ‘http://xx’ #post到urlfield_hash = {key: key, token: token} #post数据request = RestClient.post url, field_hash.merge(file: File.new(File.join(...

    ruby-spark:Apache Spark的Ruby包装器

    Ruby火花 Apache Spark:trade_mark:是用于...如果使用本地文件系统中的gem,请运行rake compile 。 构建Apache Spark 该命令将下载Spark并为此gem构建扩展( 用于编译)。 有关更多信息,请检查 。 罐子将存储在您的H

    Ruby开发包 for Script.NET V2.1.1

    5、收集了较多的脚本扩展包、帮助文档和演示程序,目前tcl的扩展包收集较多,其他脚本也正在收集完善,除了常用的tk、wx、pmw,还有图象、多媒体、界面库等很多各种各样的扩展包,以后我们打算通过在线更新的方式使...

    用于流式传输到播放设备 的命令行工具_Ruby_代码_下载

    一个命令行工具,用于将视频和图像发送到兼容 airplay 的设备(如 AppleTV)。 ...因此,为了发送本地文件,将创建一个网络服务器,见下文。 本地或远程图像可以直接...更多详情、使用方法,请下载后阅读README.md文件

    ruby-rails-sample

    在本地运行 假设您的机器上安装了 、 和 : git clone git@github.com:heroku/ruby-rails-sample.git # or clone your own fork cd ruby-rails-sample bundle bundle exec rake bootstrap foreman start 您的应用...

    Ruby-ActiveStorage使得在Rails应用中能够很方便上传和引用云服务中的文件

    Active Storage 使得在Rails应用中能够很方便上传和引用云服务中的文件,像Amazon S3或Google Cloud Storage,并将这些文件附加到Active Records中。 它还提供用于测试或本地部署的磁盘服务,但重点是云存储。

    mongo-ruby-driver:MongoDB的Ruby驱动程序

    要为master分支构建API文档,请在本地检出存储库并运行rake docs 。 支持 可通过获得对该驱动程序的商业支持。 如有疑问,讨论或一般技术支持,请访问。 请参阅文档中的“页面以获取其他支持资源。 错误和功能...

    Ruby-wordtomarkdown一个rubygem用于将MicrosoftWord文档转成Markdown

    word-to-markdown - 一个ruby gem用于将Microsoft Word文档转成Markdown

    ruby mechanize安装需要的gem包

    ruby mechanize安装需要的gem包,安装需要的本地gem文件

    sketchup-stl:SketchUp Ruby扩展,添加了STL(STereoLithography)文件格式的导入和导出

    为了支持该社区,SketchUp收集了几个Ruby插件,并将它们打包到一个Extension中。 敬请关注! 这是我们首次尝试开放源代码,我们希望重复进行这一实验。 正在安装 最新的和最大的都是RBZ文件。 从以下URL下载文件: ...

    rubyinstaller-devkit-2.5.7-1-x64.zip

    | 15 | bundle exec jekyll build | 您只需构建您的站点(而不是在本地提供),然后您可以将生成的文件上传到您的服务器(这将生成与_config.yml中配置变量url的值的规范链接) | | 16 | jekyll clean | 清空编译_site...

    评估:一个Ruby库,用于针对不同版本的依赖项测试您的库

    不支持将gem捆绑到本地位置或供应商插件。 如果您不想污染全局名称空间,则可以选择 。 建立 设置评估需要在项目根目录中有一个Appraisals文件(类似于Gemfile ),名为“评估”(请注意具体情况),并对项目的...

    neovim_ruby_plugin_provider

    Neovim插件提供者 欢迎来到您的新宝石! 在此目录中,您将找到将 Ruby 库打包成 gem 所需的文件。 将您的 Ruby 代码放在文件lib/neovim_plugin_provider ... 要将这个 gem 安装到您的本地机器上,请运行bundle exec rak

    RubyTorrent:Ruby 中的简单 BitTorrent 客户端

    该客户端可以同时从多个对等点下载单文件或多文件种子。 安装 在本地克隆 RubyTorrent。 CD 进入 RubyTorrent 目录并运行以下命令: git submodule init git submodule update 跑步 要使用 RubyTorrent 下载文件...

    unirest-ruby:Ruby中的Unirest:简化的轻量级HTTP客户端库

    支持表单参数,文件上传和自定义主体实体 支持gzip 本地支持基本身份验证 可自定义的超时 每个请求的可自定义默认标头(DRY) 自动将JSON解析为本地对象以进行JSON响应 正在安装 要求: Ruby&gt; = 2.0 要使用...

Global site tag (gtag.js) - Google Analytics