好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Ruby中使用mechanize批量下載校內網相冊照片

Ruby中使用mechanize批量下載校內網相冊照片

熱門標簽:電銷機器人廠商代理 高德地圖標注客服 徐州網絡外呼系統哪個好 常德電銷平臺外呼系統軟件價格 百度地圖標注自定義圖片 湖州u友防封電銷卡 白銀外呼paas系統 滴滴外呼系統 地圖標注賺錢項目注冊

自己閑來無事,用mechanize做了一個可以下載校內相冊照片的代碼。

寫的有些簡陋。。。。主要是根據相冊的地址來分析用戶ID和相冊ID,然后模擬請求相冊頁面,并提取所有照片,然后下載到本地的一個文件夾中。

ruby版本:ruby1.8.7 or ruby1.9.2
操作系統:windows 7

Linux下沒有試過~不過應該也可以的:

復制代碼 代碼如下:

#encoding: utf-8
require 'rubygems'
require 'mechanize'

class Renren

  def initialize(e,p)
    @agent = Mechanize.new
    @page = @agent.get('http://3g.renren.com/')
    @page = @page.form_with(:method => 'POST') do |r|
      r.email = e
      r.password = p
    end.submit
  end

  def fetch_other_photo(album_link,foldername)
    photo_urls = []
    puts Iconv.conv("gb2312", "utf-8", "開始分析相冊地址.....")
    begin
      user_id,album_id = parse_album_uri(album_link)
    rescue
      puts Iconv.conv("gb2312", "utf-8", "您的相冊地址不正確,請重新輸入!")
      return
    end
    page = @agent.get("http://3g.renren.com/album/wgetalbum.do?id=#{user_id}owner=#{album_id}")
    puts Iconv.conv("gb2312", "utf-8", "正在獲取所有照片地址.....")
    loop do
      page.links_with(:href => /http:\/\/3g\.renren\.com\/album\/wgetphoto\.do?/).each do |link|
        photo = link.click
        photo_urls photo.link_with(:text => "下載該圖").href
      end
      break if page.link_with(:text => "下一頁").nil?
      page = page.link_with(:text => "下一頁").click
    end
    if photo_urls.length > 0
      puts Iconv.conv("gb2312", "utf-8", "開始下載相冊.....")
      unless File.directory?("#{foldername}")
        Dir.mkdir("#{foldername}")
      end
      Dir.chdir("#{foldername}") do |path|
          photo_urls.each do |photo_url|
            @agent.get(photo_url) do |photo|
              puts Iconv.conv("gb2312","utf-8","正在保存文件#{photo.filename}……已經下載#{((photo_urls.index(photo_url)+1).to_f/photo_urls.length*100).to_i}%")
              photo.save
            end
          end
      end
      puts Iconv.conv("gb2312","utf-8","相冊下載完畢.....")
    else
      puts Iconv.conv("gb2312","utf-8","相冊內沒有照片喲~")
    end
  end

  private

  def parse_album_uri(uri)
    uri = uri.chomp("#thumb")
    uri = uri.split("?")
    if uri.length > 1 and uri[1].include?("owner")
      uri = uri[1].split("")
      user_id = uri[0].split("=")[1]
      album_id = uri[1].split("=")[1]
    else
      uri = uri[0].split("/")
      album_id = uri[4]
      user_id = uri[5].split("-")[1]
    end
    return user_id,album_id
  end
end

print Iconv.conv("gb2312","utf-8","用戶名:")
username = gets.chomp()
print Iconv.conv("gb2312","utf-8","密碼:")
password = gets.chomp()
renren = Renren.new(username,password)
loop do
  print Iconv.conv("gb2312","utf-8","粘貼相冊地址:")
  uri = gets.chomp()
  renren.fetch_other_photo(uri, username)
  print Iconv.conv("gb2312","utf-8","按0退出程序,按其它鍵繼續下載其它相冊:")
  break if gets.chomp() == "0"
end

您可能感興趣的文章:
  • Ruby中使用多線程隊列(Queue)實現下載博客文章保存到本地文件
  • ruby實現的一個異步文件下載HttpServer實例
  • 比較不錯的關于ruby的電子書下載地址集合
  • windows和linux下Ruby的下載與安裝
  • Ruby使用eventmachine為HTTP服務器添加文件下載功能

標簽:遼寧 梧州 普洱 荊門 張家界 公主嶺 永州 三沙

巨人網絡通訊聲明:本文標題《Ruby中使用mechanize批量下載校內網相冊照片》,本文關鍵詞  Ruby,中,使用,mechanize,批量,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ruby中使用mechanize批量下載校內網相冊照片》相關的同類信息!
  • 本頁收集關于Ruby中使用mechanize批量下載校內網相冊照片的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 美女把尿囗扒开让男人添视频漫画| 久久综合婷婷| 男女无遮挡XXOO动态120| 久久6免费视频| bdsm日本最残忍gay调教视频| 草莓视频在线看高清观看| 5G影院5g天天爽成人A片| 大乳牛奶女在线观看| 日韩激情网站| 小柔在公厕被灌满jing液| 国产熟妇AV一区21p| 国产欧美亚洲精品第3页在线| 日本战争三片战斗与人| 嗯~啊~快点??死我男男电影| 91精品国产综合久久久无几年桃| 沟拍如厕美女wc全景| 龚玥菲一件不剩全棵视频| 国产人妻第一页| 好吊妞998gao视频在线看| 欲乱公短篇小说| 清超市欲目录大团结| 精品无码国色天香777免费Av| 免费看污黄网站?大全APP| 挤入她的紧致狠狠地顶弄| xxxx在线视频| 日本AⅤ爽aV久久久久久网址| 综合图区亚洲偷自拍熟女| 色呦呦网页| 无人区码一码二码三码区别图片| 老公把儿媳妇当成老公的话| 依依成 人影院| 男男污视频在线观看| 欧美精品在线看| 囯产精品久久久久久久久久元玛| 99久久国产精品免费热7788介绍 | 绑住双手玩弄她乳尖挠痒痒视频 | 国产亚洲精品影达达兔| 欧美黑人猛交| 黄无遮挡免费网站视频| 天美传媒麻豆TM0034| 国漫3d动漫网站|