Amazon セラーセントラル Excel VBAから自動ログイン
- (2013-03-30 10:26:35)
(4/20)ログイン画面のソース変更
ログイン画面のログインボタンのソースが変更されていた。nameがなくなったので、idエレモントをクリック
<input type="image" src="https://images-na.ssl-images-amazon.com/images/○×△" id="signInSubmit" height="22" onload="if (typeof uet == 'function') { uet('cf'); }" alt="次に進む" width="86" tabindex="5" value="Continue" border="0" />
IE.document.all.Item("signInSubmit").Click()
新しいログイン画面のソース
<table class="data-entry-purple" cellspacing="0"><tr><td style="padding:10px">
<table class="data-entry-purple" cellspacing="0">
<tr>
<td class="alignright bold label-container" style="width:100%">
Eメールアドレス:
</td>
<td style="white-space:nowrap;"><input type="text" id="email" name="email" size="30" maxlength="64" /></td>
</tr>
<tr><td colspan="2" style="height:5px;line-height:5px;"> </td></tr>
<tr>
<td class="alignright bold label-container">
パスワード:
</td>
<td style="white-space:nowrap">
<input type="hidden" name="destination" value="/gp/homepage.html" />
<input type="hidden" name="optin" value="1" />
<input type="hidden" id="ouid" name="ouid" value="09" />
<input type="password" id="password" name="password" size="30" />
</td>
</tr>
<tr>
<td colspan="2" id="signin-button-container">
<button name="sign-in-button" id="sign-in-button" class="awesomeButton buttonLarge primaryLargeButton" type="submit"><span class="button_label"> サインインしてください。 </span></button>
</td>
</tr>
<tr>
<td colspan="2" class="alignright" style="padding:5px;white-space:nowrap;"><span class="smaller"><a href="https://sellercentral-japan.amazon.com/gp/change-password/change-password-email.html/ref=ag_echgpasswd_lgin_logout">パスワードをお忘れですか?</a> |
<a href="javascript:signInPage.loadHelp()">ヘルプ</a></span>
</td>
</tr>
</table>
</td></tr></table>
ログイン画面か判定して、ログイン画面なら自動ログイン
Dim ret As Variant
Dim Str As String
ret = InStr(IE.document.body.innerText, "アカウントにサインインする")
Sleep (1000)
If Not ret = 0 Then
IE.document.all.Email.Value = [メアド]
IE.document.all.Password.Value = [パスワード]
IE.document.all.tags("button").Item("sign-in-button").Click
End If
Do While IE.Busy Or IE.ReadyState <> 4
DoEvents
Loop
IE.Visible = True
※クリックボタンは、ソース内ではhtmlの<button>タグで、nameは「sign-in-button」になっているので、この要素をClick。昨日は違ったnameだったような気がするが、ここ数日何回か変更されて、もとのnameに戻ってきている。ということは明日はまた違うものに変わるかも?落ち着くまで何回か変化しそう。Amazonの開発部さん内部で、何が起きてるのかな?