Ruby实现网页图片抓取(中韩女足第二场比赛)这样也行?

随心笔谈2年前发布 admin
189 0 0

文章摘要

这篇文章介绍了在Ruby语言中使用Nokogiri和Open-uri库的模块CommonHelper,实现了两个主要功能。首先,`download_xmz`函数用于从指定网站下载HTML页面中的图片,并将图片下载到本地并保存到“public/meizi”目录中。具体来说,该函数通过循环访问指定的HTML页面,提取图片URL,并调用`download_img`函数进行下载和保存。其次,`download_img`函数负责处理图片下载和本地保存过程,包括读取图片内容、保存路径生成、以及错误处理机制。文章整体展示了如何通过简单的代码实现高效的图片下载功能。


module CommonHelper

require ‘nokogiri’
require ‘open-uri’

def down_load_xmz
site_url=”http://www.xxx.com”

for index_page in 1..141
doc_html=Nokogiri::HTML(open(site_url+’/share/comment-page-‘+index_page.to_s))
doc_html.css(“#comments p img”).each do |item_img|
puts item_img[:src]
download_img(item_img[:src])
end
end
end

########下载图片
def download_img(img_url)
begin
img_file=open(img_url) { |f| f.read }
file_name=img_url.split(‘/’).last
#puts file_name
open(“public/meizi/”+file_name, “wb”) { |f| f.write(img_file) }
return “/public/meizi/”+file_name
rescue=> err
puts err
return ”
end
end

end

© 版权声明

相关文章