python Splinter browser.fill方法冻结浏览器

时间:2014-06-18 16:40:52

标签: python splinter

我正在雅虎注册页面上玩Splinter。当我尝试填写yahoo用户名时出错了。 以下是代码。我很确定下面的代码没有任何问题。

with Browser() as browser: 
# Visit URL
    url = "https://edit.yahoo.com/registration?.intl=us&.lang=en-US&.pd=ym_ver%253D0%2526c%253D%2526ivt%253D%2526sg%253D&new=1&.done=http%3A//mail.yahoo.com&.src=ym&.v=0&.u=3lt6ffl9q1g0m&partner=&.partner=&pkg=&stepid=&.p=&promo=&.last=&fsredirect=1&fs=uKhjpV.HafCCqUaFfpsAA6U3jii0wwSSblFjRz2HbaZq5sH_VJeVqejV5CUyegWCV3V2PxNx"
    browser.visit(url) 
    browser.fill("yahooid","Zara")

如果我停止该程序,浏览器将再次活动。 我的一个猜测是它正在等待诸如用户名建议之类的东西,因为它与“名字”和“姓氏”字段一起正常工作。

我使用的是Windows 8,Eclipse,Splinter 0.6.0,Firefox 30.0

在玩Splinter时,还有另一种方法可以用来做同样的事情。 在解决此问题之前,具有相同问题的人可以使用以下概念。

with Browser() as browser: 
# Visit URL
    url = "https://edit.yahoo.com/registration?.intl=us&.lang=en-US&.pd=ym_ver%253D0%2526c%253D%2526ivt%253D%2526sg%253D&new=1&.done=http%3A//mail.yahoo.com&.src=ym&.v=0&.u=3lt6ffl9q1g0m&partner=&.partner=&pkg=&stepid=&.p=&promo=&.last=&fsredirect=1&fs=uKhjpV.HafCCqUaFfpsAA6U3jii0wwSSblFjRz2HbaZq5sH_VJeVqejV5CUyegWCV3V2PxNx"
    browser.visit(url) 
    #browser.fill("yahooid","Zara")
    browser.execute_script("document.getElementsByName('yahooid')[0].value='Zara'")

0 个答案:

没有答案