Skip to content

Instantly share code, notes, and snippets.

@aycabta
Created December 26, 2016 21:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aycabta/a61620d2b9c81a52403de3a574276106 to your computer and use it in GitHub Desktop.
Save aycabta/a61620d2b9c81a52403de3a574276106 to your computer and use it in GitHub Desktop.
require 'mechanize'
EMAIL = ''
PASSWORD = ''
agent = Mechanize.new
agent.user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.75 Safari/537.36'
puts 'log in try...'
page = agent.get('https://www.amazon.co.jp/')
signin_path = page.search('script').map(&:text).select { |t| t.include?('nav-flyout-ya-signin') }.first.gsub(/^.+nav-flyout-ya-signin[^>]+><a href='([^']+)'.+$/m, '\1')
page = agent.get("https://www.amazon.co.jp#{signin_path}")
form = page.form_with(name: 'signIn') { |f|
f.email = EMAIL
f.password = PASSWORD
f.checkbox_with(name: 'rememberMe').check
}
loggedin = form.submit
puts 'logged in'
puts 'show item page'
#page = agent.get('https://www.amazon.co.jp/dp/4048668374')
page = agent.get('https://www.amazon.co.jp/dp/4091250157')
unless page.at('#OneClickBox')
puts 'no 1-Click setting'
puts '1-Click setting...'
signin_path = page.at('#oneClickSignIn a').attr('href')
page = agent.get("https://www.amazon.co.jp#{signin_path}")
unless page.at('#OneClickBox')
STDERR.puts 'Can not 1-Click'
exit 1
end
puts 'OK, 1-Click mode now'
end
puts 'hey i will try to 1-Click'
form = page.form_with(id: 'addToCart')
one_click = form.button_with(id: 'oneClickBuyButton')
form.click_button(one_click)
puts 'done'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment