我正在尝试从内部具有只读内容的网站上的表单收集电子邮件地址。
<input name="email" id="email" type="text" class="form-control" value="[email protected]" readonly="">
我希望能够获取电子邮件地址([email protected]),但是我尝试的所有操作均返回“无法找到元素”。
一切都已正确配置,脚本的其余部分都可以正常工作,而我遗漏了。
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
from bs4 import BeautifulSoup
import re
import pandas as pd
import os
x = 0
all_volunteers = driver.find_elements_by_xpath('//*[@title="View volunteer record"]')
for volunteer in all_volunteers:
volunteer.click()
driver.implicitly_wait(3)
# email_add = driver.find_element_by_id('emaillabel')
#email_add = driver.switch_to_frame(driver.find_element_by_name('email'))
#print(email_add.get_attribute('email'))
#email_add = driver.find_element_by_css_selector('input id')
#email_add = driver.find_element_by_xpath('//input [@name="email"]')
#email_add = driver.find_element_by_tag_name('Email Address')
email_add = driver.find_element_by_xpath('//*[@id="email"]')
print(email_add.get_attribute('value'))
# back button
driver.execute_script("window.history.go(-1)")
#increase counter by 1
x += 1
注释掉的所有内容(后跟#)是我尝试过的。
有谁能告诉我我做错了什么或想念什么?
python参考方案
我有一个调试解决方案来定位元素。
在浏览器中,打开包含电子邮件输入的网页
开放开发人员工具(F12)
在开发人员工具中打开控制台选项卡
键入$x('//input[@id="email"]')
并查看元素是否位于。这是本机xpath定位器
您也可以在控制台中尝试document.getElementById('email')
如果仍然找不到该元素,请尝试在屏幕截图中标记的iFrame选择器以识别iframe并切换到该iframe。
如果返回多个元素,则意味着您可能必须修改选择器以查找唯一元素。
我需要计算Lindeman-Merenda-Gold(LMG)分数,以进行回归分析。我发现R语言的relaimpo包下有该文件。不幸的是,我对R没有任何经验。我检查了互联网,但找不到。这个程序包有python端口吗?如果不存在,是否可以通过python使用该包? python参考方案 最近,我遇到了pingouin库。
如何使用Selenium和Python启动基于Chromium的Vivaldi浏览器会话 - python我正在尝试将vivaldi browser与Selenium一起使用。这是一款与Chrome浏览器非常相似的Chrome浏览器。我有Selenium与Firefox(geckodriver)和Google Chrome(chromedriver)一起工作,但是我似乎找不到Vivaldi的方法。任何帮助,将不胜感激。 python大神给出的解决方案 如果默认情…
用大写字母拆分字符串,但忽略AAA Python Regex - python我的正则表达式:vendor = "MyNameIsJoe. I'mWorkerInAAAinc." ven = re.split(r'(?<=[a-z])[A-Z]|[A-Z](?=[a-z])', vendor) 以大写字母分割字符串,例如:'我的名字是乔。 I'mWorkerInAAAinc”变成…
硒独立服务器日志级别 - python长话短说:我正在尝试将日志级别更改为Selenium独立服务器上的WARNING。我在CentOS 6.7上运行2.48.2。我在服务器端尝试过,即在启动服务器时添加了-Dselenium.LOGGER.level=WARNING-不起作用。然后,我尝试使用默认级别作为警告的自定义属性文件-Djava.util.logging.config.file=/op…
将字符串分配给numpy.zeros数组[重复] - pythonThis question already has answers here: Weird behaviour initializing a numpy array of string data (4个答案) …