module GetClassTxt
encoding = utf-8
Public Instance Methods
download_text(html)
click to toggle source
# File lib/getscore/get_class.rb, line 20 def download_text(html) puts "download_text" html.match /saveAsText.*\s?\{\s+.*src.*"(.*)";$/ begin request = Net::HTTP::Get.new(URI($1.to_s)) request['Cookie'] = @session request['User-Agent'] = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/43.0.2357.81 Safari/537.36" @http.request(request) do |response| return unless response.is_a?(Net::HTTPSuccess) File.open("html_file.tmp", "w") do |file| response.read_body do |segment| file.write(segment) end end end rescue Exception => e log_out exit end "SUCCESS" end
get_whole_page()
click to toggle source
# File lib/getscore/get_class.rb, line 5 def get_whole_page puts "get faculty score" request = Net::HTTP::Post.new('/reportFiles/zhjwcx/syxqcjxx/zhjwcx_syxqcjxx_jtcjcx.jsp') request['Cookie'] = @session request.set_form_data("xsh"=>"05", "zxjxjhh"=>"2014-2015-2-1", "bjh"=>"") begin response = @http.request(request) rescue Exception => e log_out exit end body = response.body.force_encoding('gbk').encode('utf-8') end
log_out()
click to toggle source
# File lib/getscore/get_class.rb, line 42 def log_out request = Net::HTTP::Post.new('/logout.do') request['Cookie'] = @session request.set_form_data("loginType"=>"platformLogin") response = @http.request(request) puts "logout code: #{response.code}" end