我有一个自动化的Gmail.Here,我需要获得像收件箱,垃圾邮件,批量etc.How标签的未读邮件计数我可以使用selenium RC获得未读邮件的计数。假设标签为Inbox(5),Spam(10),Bulk(34)。这意味着收件箱包含5封未读邮件,垃圾邮件包含10封未读邮件。那么对于这种需求,我如何使用Selenium RC来实现呢?
谢谢和问候,湿婆。
发布于 2012-11-16 07:46:34
我认为,使用标准的IMAP客户端接口,您将能够更快地完成任务。
请参阅Mail::ImapClient上的working example in Perl和更多官方文档
发布于 2012-11-16 14:55:31
String inbox=selenium.getText("//a[contains(@title,'Inbox')]");
现在收件箱字符串变量包含收件箱(1)
String unreadInboxMails=inbox.substring(inbox.indexOf("(")+1,inbox.indexOf(")"));
通过这种方式,您可以获得所有标签,如垃圾邮件,散装等,唯一需要更改的是标签定位器。
我希望这能解决你的问题。
发布于 2013-05-08 10:49:31
这正是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
https://stackoverflow.com/questions/13412306
复制