我正在尝试编写一个简单的脚本,检查我是否有任何标记为“某事”的 gmail 电子邮件,然后打开一个 Firefox 浏览器窗口到登录页面,然后转到其他页面。
这就是我正在做的:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.common.exceptions import TimeoutException
from selenium.webdriver.common.action_chains import ActionChains
import time, imaplib
Eusername = "[email protected] /cdn-cgi/l/email-protection"
Epassword = "password1"
username = "username"
password = "password2"
imaps = imaplib.IMAP4_SSL('imap.gmail.com','993')
imaps.login(Eusername,Epassword)
imaps.select('SOMETHING')
status, response = imaps.status('SOMETHING', "(UNSEEN)")
unreadcount = int(response[0].split()[2].strip(').,]'))
while unreadcount > 0:
driver = webdriver.Firefox()
driver.get('http://wwww.SomeURL.com/some_login.html')
time.sleep(3)
inputElement = driver.find_element_by_name("user")
inputElement.send_keys(username)
inputElement = driver.find_element_by_name("pw")
inputElement.send_keys(password)
inputElement.submit()
time.sleep(1)
driver.get('http://www.SomeURL.com/somethingelse.html')
imaps.select('SOMETHING')
typ ,data = imaps.search(None,'UnSeen')
imaps.store(data[0].replace(' ',','),'+FLAGS','\Seen')
我花了几个小时搜索,但没有找到最大化浏览器窗口的解决方案。在其他地方,我读到有一个 windowMaximize() 或 window_maximize(),但无法让它们工作,因为我尝试过的每个配置都声称它不存在于任何模块中。
我只懂一点Python,并且在Mac OSX上工作
我以前从未使用过这个功能,所以我尝试了一下。
driver.maximize_window()
这似乎工作正常 - 除非我使用 Chrome。我不确定这是否是一个缺陷,因为它在 IE9 和 Firefox 中工作得很好。
编辑:
该功能尚未在 Chromedriver 中实现-=问题链接=- http://code.google.com/p/chromedriver/issues/detail?id=67
编辑(8年后):
显然这可以在 Linux 和 Windows 上的 Chrome 中运行 - 所以,耶!我还没有测试过,但我很乐观,因为自从提供原始答案以来已经近十年了。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)