Ruby批量下载音乐

下载VOA英语网站的相关内容,脚本如下

为两当等地区用户提供了全套网页设计制作服务,及两当网站建设行业解决方案。主营业务为网站设计、网站建设、两当网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

要用到 Nokogiri 库。此库相关使用介绍

#!/usr/bin/ruby
require 'open-uri'
require 'nokogiri'
www = 'http://www.51voa.com'
pagelist = []
doc = Nokogiri::HTML(open(www + '/Learn_A_Word_1.html'))
doc.css('div#pagelist a').each{|x| pagelist << x['href']}
def get_child_page(address)
  list = []
  doc = Nokogiri::HTML(open(address))
  doc.css('div#list a').each{|x| list << x['href']}
  list
end
def download(mp3,file)
File.open(file + ".mp3",'wb'){ |f| f.write(open(mp3).read) }
end
def writefile(txt,file)
  aFile = File.new(file + ".txt","w")
  aFile.puts txt
  aFile.close
end
pagelist.each do |address|
txt, mp3, name = ''
   list = get_child_page(www + "/" + address)
   list.each do |result|
       doc = Nokogiri::HTML(open(www + result))
       txt = doc.css('div#content').text #file txt
       name = doc.css('div#title').text.strip.gsub(' ','_')
       #name = doc.css('div#title').text.encode("GBK") 如果想保存中文名,就用String#encode方法
       begin
       mp3 = doc.css('div#menubar a')[0]['href'] #mp3
       download(mp3,name)
       writefile(txt,name)
       rescue
       end
   end
end

标题名称:Ruby批量下载音乐
网页URL:http://bzwzjz.com/article/pocghc.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 手机网站制作 成都网站设计 四川成都网站制作 手机网站建设 成都品牌网站设计 四川成都网站建设 成都商城网站制作 企业网站建设 公司网站建设 成都网站制作 专业网站建设 成都网站设计 定制网站设计 广安网站设计 成都营销网站建设 定制网站建设 成都网站建设 企业手机网站建设 网站建设推广 响应式网站建设 外贸网站设计方案 成都网站设计