ruby 将所有Octocats(https://octodex.github.com/)下载到本地文件夹

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ruby 将所有Octocats(https://octodex.github.com/)下载到本地文件夹相关的知识,希望对你有一定的参考价值。

#!/usr/bin/env ruby

require 'nokogiri'
require 'open-uri'
require 'etc'

# home user path
home_path = Etc.getpwnam(Etc.getlogin).dir
wallpaper_folder = "#{home_path}/Pictures/wallpapers"

if Dir[wallpaper_folder].empty?
  Dir.mkdir(wallpaper_folder)
  puts "created folder on #{wallpaper_folder}"
end

page = Nokogiri::HTML(open('https://octodex.github.com/'))
page.css('div.item.list a.preview-image img').each do |image|
  image_url = "https://octodex.github.com#{image.attributes['data-src'].to_s}"
  open(image_url) {|f|
     File.open("#{wallpaper_folder}/#{image.attributes['alt'].to_s}.png", "wb") do |file|
       file.puts f.read
     end
  }
end

以上是关于ruby 将所有Octocats(https://octodex.github.com/)下载到本地文件夹的主要内容,如果未能解决你的问题,请参考以下文章

ruby 这个Ruby脚本将批量删除超过30天的所有Slack文件。只需从https://api.slack.com/web#authentication添加您的API令牌即可

在 Amazon OpsWorks 上使用 Ruby 2.0

从Ruby中的URL中删除除网站名称以外的所有内容[复制]

ruby 将所有要点同步到本地磁盘

ruby 证明在ruby进程中执行的系统命令将此进程作为父进程并具有其所有环境变量

ruby 将所有参数从控制器转换为仅数字