当前位置: 首页 > 知识库问答 >
问题:

我真的很喜欢Python selenium模块

郭恩
2023-03-14

我正在做一个简单的程序,使我能够填写登录表单和发送电子邮件给某人…当我在上面的时候,它只是不去更多,停止打开一些链接。

# Practice Program!

import requests, os, bs4, webbrowser
from selenium import webdriver

url = 'http://google.com'

res = requests.get(url)
res.raise_for_status()

browser = webdriver.Firefox()

browser.get(url)

signinElem = browser.find_element_by_id('gb_70')
signinElem.click()

idElem = browser.find_element_by_id('Email')
idElem.send_keys('not_my_real_id')
idElem.submit()

pwElem = browser.find_element_by_id('Passwd')
pwElem.send_keys('not_my_pw')
pwElem.submit()

mailElem = browser.find_element_by_class_name('gb_P')
mailElem.click()

composeElem = browser.find_element_by_class_name('class="T-I J-J5-Ji T-I-KE L3')
composeElem.click()

我有以下错误

回溯(最近的调用为last):文件“C://users/cyber/downloads/writemail.py”,第22行,在pwElem=browser.find_element_by_id('passwd')中文件“C:\users\cyber\downloads\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第269行,在find_element_by_id返回self.find_element(by=by.id,value=id)文件“downloads\lib\site-packages\selenium\webdriver\remote\webdriver.py”,第236行,执行self.error_handler.check_response(响应)文件“C:\users\cyber\downloads\lib\site-packages\selenium\webdriver\remote\errorhandler.py”,第192行,在check_response引发exception_class(消息,屏幕,stacktrace)驱动程序@googlecode.cOM/components/driver-component.js:10770)在(文件:///C:/users/cyber/appdata/local/temp/tmpczr__hhf/extensions/fxdriver@googlecode.com/components/driver-component.js:10779)在(文件:///C:/users/cyber/appdata/local/temp/tmpczr__hhf/extensions/fxdriver@googlecode.com/components/fxdriver-processor.js:12666)at(文件:///c://users/cyber/appdata/local/temp/tmpczr__hhf/extensions/fxdriver@googlecode.com/components/command-processor.js:12608)

共有1个答案

柴琦
2023-03-14

当您提交电子邮件时,Paasword字段可见,因此您需要实现WebDriverWait,直到Password字段可见,如下所示:-

from selenium.webdriver.support import expected_conditions as EC

-------------

wait = WebDriverWait(browser, 10)

idElem = wait.until(EC.visibility_of_element_located((By.ID, "Email")))
idElem.send_keys('not_my_real_id')
idElem.submit()


pwElem = wait.until(EC.visibility_of_element_located((By.ID, "Passwd")))
pwElem.send_keys('not_my_pw')
pwElem.submit()

希望对你有帮助…:)

 类似资料:
  • 本文向大家介绍很酷的python表白工具 你喜欢我吗,包括了很酷的python表白工具 你喜欢我吗的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了python表白工具的具体代码,供大家参考,具体内容如下 实现代码: 效果图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。

  • 问题内容: 是否可以在一个查询中将多个SQL LIKE通配符串在一起-像这样? 目的是查找同时包含通配符但没有特定顺序的记录。 问题答案: 正确的SQL语法是:

  • 喜欢资讯 取消喜欢资讯 资讯喜欢列表 喜欢资讯 POST /news/{news}/likes Response Headers Status: 201 Created 取消喜欢资讯 DELETE /news/{news}/likes Response Headers Status: 204 No Content 资讯喜欢列表 GET /news/{news}/likes Respons

  • 点喜欢 取消喜欢 喜欢的人列表 点喜欢 POST /feeds/:feed/like Response Status: 201 Created { "message": [ "操作成功" ] } 通知类型 { "channel": "feed:digg", // 通知关键字 "target": 325, // 动态id "content": "@2222 点喜欢了

  • 我们将从推荐系统开始,开启数据挖掘之旅。推荐系统无处不在,如亚马逊网站的“看过这件商品的顾客还购买过”板块: last.fm上对音乐和演唱会的推荐(相似歌手): 在亚马逊的例子里,它用了两个元素来进行推荐:一是我浏览了里维斯翻译的《法华经》一书;二是其他浏览过该书的顾客还浏览过的译作。 本章我们讲述的推荐方法称为协同过滤。顾名思义,这个方法是利用他人的喜好来进行推荐,也就是说,是大家一起产生的推荐

  • 我想使用的方法获取http://en.wikipedia.org的内容。 我发现en.wikiepdia.org同时有IPv4和IPv6地址: 如何使用IPv6地址访问该站点?