現在こちらの大学のシラバスをスクレイピングしたいです
一橋大学 mercas
ログインしなければ見れないのですが一般の方は何も入力せずにログインすれば見れるようになります
その後シラバスのページに進むとシラバスが検索できるようになります
やったこと
rubyのライブラリであるmechanizeを使ってログインしようとしたのですがうまくいきません
具体的には
require 'rubygems' require 'nokogiri' require 'mechanize' agent = Mechanize.new agent.get('https://mercas.hit-u.ac.jp/Campus/Web/UniversityPortal/UserAttestation/WFU06010.aspx') do |page| login_result = page.form_with(:action => 'WFU06010.aspx') do |login| login.field_with(:name => 'txbID').value = "" login.field_with(:name => 'txbPassword').value = "" end.submit end agent.get('https://mercas.hit-u.ac.jp/Campus/Web/UniversityPortal/WFC00010.aspx') do |page| p page end
というコードでログインしたあとサイトのページの情報表示させようとしたのですが
#<Mechanize::Page {url #<URI::HTTPS https://mercas.hit-u.ac.jp/Campus/Web/UniversityPortal/WFC00010.aspx>} {meta_refresh} {title "一橋大学 学務情報システム・学生ポータル Mercas(MERCURY CAMPUS SYSTEM)"} {iframes} {frames} {links #<Mechanize::Page::Link "利用マニュアル(教員用)" "/manual-teacher-N.pdf"> #<Mechanize::Page::Link "利用マニュアル(学生用)" "/manual-student.pdf"> #<Mechanize::Page::Link "ログアウト" "javascript:__doPostBack('UC00050$linkLogOut','')"> #<Mechanize::Page::Link "ウインドウを閉じる" "javascript:__doPostBack('UC00050$linkClose','')">} {forms #<Mechanize::Form {name "WFC01010"} {method "POST"} {action "WFC01010.aspx"} {fields [hidden:0x3fcf3e123e80 type: hidden name: __VIEWSTATE value: /wEPDwUKLTExNjY1ODMyMA8WCB4STWVzc2FnZUluZm9ybWF0aW9uFgEy/QIAAQAAAP////8BAAAAAA~中省略~6m0yE2u2Y=] [hidden:0x3fcf3e123a70 type: hidden name: __VIEWSTATEGENERATOR value: 0B535023] [hidden:0x3fcf3e12369c type: hidden name: __EVENTVALIDATION value: /wEWAwKSoqUuAuegiskIAvrV7/IH6dgLY2bsu9wzjA4YEZUT7CSPO1Y=]} {radiobuttons} {checkboxes} {file_uploads} {buttons}>}>
となりメニューバーの部分しか表示されません
とりあえずシラバスの検索結果のテキストを取り出したいです
よろしくおねがいします
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。