首页 / PYTHON / 单击不适用于python硒
单击不适用于python硒
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了单击不适用于python硒,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含3214字,纯文字阅读大概需要5分钟。
内容图文
![单击不适用于python硒](/upload/InfoBanner/zyjiaocheng/664/77598573bbfd45e498a11660ea4f12df.jpg)
我正在尝试创建一个机器人,该机器人将填写特定网站的注册表单.
网站详细信息-http://hacknyu.org/signup
码:
from selenium import webdriver
class HackNNYU(object):
first_name = 'input[ng-model="credentials.first_name"]'
last_name = 'input[ng-model="credentials.last_name"]'
email = '.col-sm-12>input[ng-model="credentials.email"]'
password = '.col-sm-12>input[ng-model="credentials.password"]'
agree_checkbox = '.ng-binding>input[ng-model="checkModel"]'
sign_up_button = 'div>button[type="submit"]'
accept_button = 'button[ng-click="positive()"]'
def fill_up_hack_nyu():
driver = webdriver.Firefox()
driver.get('http://hacknyu.org/signup')
driver.find_element_by_css_selector(HackNNYU.first_name).send_keys('Friday')
driver.find_element_by_css_selector(HackNNYU.last_name).send_keys('Night')
driver.execute_script("window.scrollTo(0, 300);")
driver.find_element_by_css_selector(HackNNYU.email).send_keys('ade347@gmail.edu')
driver.find_element_by_css_selector(HackNNYU.password).send_keys('123456')
driver.find_element_by_css_selector(HackNNYU.agree_checkbox).click()
driver.find_element_by_css_selector(HackNNYU.accept_button).click()
# driver.execute_script("window.scrollTo(0, 400);")
driver.find_element_by_css_selector(HackNNYU.sign_up_button).click()
fill_up_hack_nyu()
问题
driver.find_element_by_css_selector(HackNNYU.sign_up_button).click()
主要问题在于这条线.手动,当您单击“注册”按钮时,它可以正常工作,但是当我运行该程序时,我可以看到它正在单击“注册”按钮,但是此后什么也没有发生.谁能帮我为什么这不起作用?我只是想使用机器人注册一个活动.我将非常感谢您能提供的任何帮助.
错误
有时候我总是收到这个错误
selenium.common.exceptions.WebDriverException: Message: Element is not clickable at point (796.4000244140625, 45.399993896484375). Other element would receive the click
解决方法:
该页面的顶部有一个标语,使自动滚动隐藏了“提交”按钮.要解决此问题,您可以定义滚动行为以改为在底部滚动.此外,您的脚本似乎没有正确单击应显示术语弹出窗口的复选框.
这是一个在hacknyu上创建新帐户的工作脚本:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
# set the scrolling behavior to down
DesiredCapabilities.FIREFOX["elementScrollBehavior"] = 1
driver = webdriver.Firefox()
wait = WebDriverWait(driver, 10)
# load the page
driver.get("http://hacknyu.org/signup")
# get the form element
form = driver.find_element_by_css_selector("form[name='signupForm']")
# fill the fields
form.find_element_by_css_selector("input[name='firstName']").send_keys("myfirstname")
form.find_element_by_css_selector("input[name='lastName']").send_keys("mylastname")
form.find_element_by_css_selector("input[name='email']").send_keys("na@na.na")
form.find_element_by_css_selector("input[name='password']").send_keys("mypassword")
# click and accept terms
form.find_element_by_xpath("//input[@name='terms']/..").click()
wait.until(EC.presence_of_element_located((By.XPATH, "//button[.='Accept']"))).click()
wait.until_not(EC.presence_of_element_located((By.CSS_SELECTOR, ".modal")))
# click on submit
form.find_element_by_css_selector("button[type='submit']").click()
内容总结
以上是互联网集市为您收集整理的单击不适用于python硒全部内容,希望文章能够帮你解决单击不适用于python硒所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。