0

Gmail を自動化する必要があります。ここでは、受信トレイ、スパム、バルクなどのラベルの未読メール数を取得する必要があります。selenium RC を使用して未読メール数を取得するにはどうすればよいですか。ラベルが Inbox(5)、Spam(10)、Bulk(34) であるとします。Inbox には 5 件の未読メールがあり、Spam には 10 件の未読メールが含まれています。この種の要件について、Selenium RC を使用してどのように達成できますか?

よろしくお願いします、シヴァ。ここに画像の説明を入力

4

4 に答える 4

2

標準の IMAP クライアント インターフェイスを使用すると、タスクをより迅速に完了できると思います。

Perl での作業例と、 Mail::ImapClientの公式ドキュメントを参照してください。

于 2012-11-16T07:46:34.450 に答える
1
String inbox=selenium.getText("//a[contains(@title,'Inbox')]");

inbox String 変数にInbox (1)が含まれるようになりました

String unreadInboxMails=inbox.substring(inbox.indexOf("(")+1,inbox.indexOf(")"));

このようにして、スパム、バルクなどのすべてのラベルを取得できます。変更する必要があるのは Label locator だけです。

これで問題が解決することを願っています。

于 2012-11-16T14:55:30.970 に答える
0

これは、すべてのフォルダーの未読数を取得してアラートに表示する正確な Selenese (Selenium IDE) コードです。

いくつかのコマンドを微調整することで、Selenium RC で使用できます。

store | //div[@class='LrBjie']/div/div[ | target1
store | ]/div/div/div/span/a | target2
store | 1 | i
store | true | present
store |  | countsAll
while | ${present}==true | 
storeEval | storedVars['target1']+storedVars['i']+storedVars['target2'] | target
echo | ${target} | 
storeText | javascript{storedVars['target']} | counts
storeEval | storedVars['countsAll']+'  $  '+storedVars['counts']   |   countsAll
echo | ${countsAll} | 
storeEval | parseInt(storedVars['i'])+1 | i
storeEval | storedVars['target1']+storedVars['i']+storedVars['target2'] | target
storeElementPresent | javascript{storedVars['target']} | present
echo | ${present} | 
endWhile |  | 
storeEval | javascript{alert(storedVars['countsAll'])} | countsAll
于 2013-05-08T10:49:31.177 に答える