🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

1回答

575閲覧

Mechanizeを用いたAmazonログイン

tonton333

総合スコア19

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Webサイト

一つのドメイン上に存在するWebページの集合体をWebサイトと呼びます。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2019/12/14 08:45

自分はWeb関連のプログラムは初めて取り組んでいます

rubyとmechanizeを使って,アマゾンにログインしようとしているのですがうまくいきません
ネットから拾ったコードを改変しました
実行後のhtmlを見ると,!Eメールアドレスまたは携帯番号を入力とでます
HTMLを眺めた限りはemailとpasswordを入力すればいいのかと推測したのですが...(htmlも初めてみたレベルです)

どのように修正すればいいでしょうか?

よろしくお願いします

ruby

1path ='https://www.amazon.co.jp/hz/mycd/myx?ie=UTF8&openid.identity=https%3A%2F%2Fwww.amazon.co.jp%2Fap%2Fid%2Famzn1.account.AGL4O3NQKSEFFJ64ZRPPXK3J3VPQ&openid.op_endpoint=https%3A%2F%2Fwww.amazon.co.jp%2Fap%2Fsignin&openid.pape.auth_time=2019-12-14T06%3A31%3A35Z&openid.signed=assoc_handle%2Cclaimed_id%2Cidentity%2Cmode%2Cns%2Cop_endpoint%2Cresponse_nonce%2Creturn_to%2Cns.pape%2Cpape.auth_policies%2Cpape.auth_time%2Csigned&openid.return_to=https%3A%2F%2Fwww.amazon.co.jp%2Fmn%2Fdcw%2Fmyx.html%2Fref%3Dkinw_myk_redirect&openid.assoc_handle=jpamazon&serial=&openid.mode=id_res&openid.ns.pape=http%3A%2F%2Fspecs.openid.net%2Fextensions%2Fpape%2F1.0&openid.pape.auth_policies=http%3A%2F%2Fschemas.openid.net%2Fpape%2Fpolicies%2F2007%2F06%2Fnone&openid.sig=5X4liY%2BkWUIBJbP7z1HbMXqw3j1UBu9JZpsAL0G96fI%3D&openid.claimed_id=https%3A%2F%2Fwww.amazon.co.jp%2Fap%2Fid%2Famzn1.account.AGL4O3NQKSEFFJ64ZRPPXK3J3VPQ&openid.response_nonce=2019-12-14T06%3A31%3A35Z6899937395191401648&openid.ns=http%3A%2F%2Fspecs.openid.net%2Fauth%2F2.0#/home/content/booksAll/dateDsc/' 2 3 4agent = Mechanize.new 5agent.user_agent_alias = 'Mac Safari 4' 6agent.get(path) do |page| 7 8 mypage = page.form_with(name: 'signIn') do |form| 9 # ログインに必要な入力項目を設定していく 10 # formオブジェクトが持っている変数名は入力項目(inputタグ)のname属性 11 form.email = EMAIL 12 form.password = PASSWORD 13 14 end.submit 15 16 doc = Nokogiri::HTML(mypage.content.toutf8) 17 #puts doc 18 h1_text = doc.xpath('//h1').text 19 puts h1_text 20end

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2019/12/14 17:24

MechanizeはJavaScriptを扱えないので、JavaScriptを無効にしたブラウザで、希望の操作ができるかどうか、確認してください。
tonton333

2019/12/15 07:52

動的処理しているサイトに対しては別の処理が必要だったんですね seleniumを使ったらうまくいきましたありがとうございます
guest

回答1

0

自己解決

amazonへはseleniumを使えば簡単にアクセスできました

投稿2019/12/15 07:54

tonton333

総合スコア19

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問