teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

修正

2019/05/27 22:26

投稿

退会済みユーザー
answer CHANGED
@@ -36,7 +36,7 @@
36
36
  end
37
37
 
38
38
  unless days.include?(input_date[6, 2])
39
- puts "選択された日はありません:#{input_date[0, 4]}"
39
+ puts "選択された日はありません:#{input_date[6, 2]}"
40
40
  exit
41
41
  end
42
42
 

1

修正

2019/05/27 22:26

投稿

退会済みユーザー
answer CHANGED
@@ -5,7 +5,6 @@
5
5
  input_date = '20190502' # 日付を入力する
6
6
  USER_AGENT = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36'
7
7
  REFERER = 'http://www1.mbrace.or.jp/od2/K/dmenu.html'
8
- doc1 = Nokogiri::HTML.parse(open('http://www1.mbrace.or.jp/od2/K/dmenu.html', { 'User-Agent' => USER_AGENT }))
9
8
 
10
9
  def download_file(url, user_agent, referer)
11
10
  Dir.mkdir('download') unless Dir.exist?('download')
@@ -17,6 +16,9 @@
17
16
  end
18
17
  end
19
18
 
19
+ doc1 = Nokogiri::HTML.parse(open('http://www1.mbrace.or.jp/od2/K/dmenu.html',
20
+ { 'User-Agent' => USER_AGENT }))
21
+
20
22
  month = doc1.xpath('//select[@name="MONTH"]/option').map.with_index do |option, i|
21
23
  option.xpath('@value').text unless i.zero?
22
24
  end
@@ -27,7 +29,7 @@
27
29
  end
28
30
 
29
31
  doc2 = Nokogiri::HTML.parse(open("http://www1.mbrace.or.jp/od2/K/#{input_date[0, 6]}/mday.html",
30
- { 'User-Agent' => USER_AGENT, 'Referer' => REFERER }))
32
+ { 'User-Agent' => USER_AGENT, 'Referer' => REFERER }))
31
33
 
32
34
  days = doc2.xpath('//input[@type="radio"]').map do |radio|
33
35
  radio.xpath('@value').text