填写贝宝快递结账硒

时间:2016-11-13 02:18:34

标签: jquery python selenium paypal express-checkout

我是SOF的新手。 填写paypal登录表单时遇到问题。

我希望我的脚本登录到paypal快速结账页面然后点击付款按钮返回商家网站并点击提交按钮。

现在我有了这个我已经尝试了几种方法,但我无法让它工作。 它点击商家网站上的paypal结账按钮,然后转到贝宝,但它没有填充任何东西,然后脚本(铬?)崩溃并关闭铬。

results=browser.execute_script("window.location='"+cartURL+"'")
checkBtn=browser.find_element_by_xpath("//div[@class='co-actionscart-bottom- actions checkout-buttons-wrapper clearfix checkout-paypal']//button[@class='co-btn_primary btn_showcart button-full-width button-ctn button-brd-sol button-brd    adi-gradient-lightgrey paypal-button track btn btn-paypal btn-block']")
print(checkBtn)
checkBtn.click()
time.sleep(sleeping)
time.sleep(sleeping)
time.sleep(sleeping)
browser.switchTo().frame("injectedUl")
inputelement = browser.find_element_by_name("login_email")
inputelement.clear()
inputelement.send_keys(cardNum)
inputelement = browser.find_element_by_name("login_password")
inputelement.clear()
inputelement.send_keys(safeCode)`

2 个答案:

答案 0 :(得分:0)

后,您切换到了iframe "injectedUl",其下面有一个#shadow-root,这有点像JavaScript devs to encapsulate their implementation。在你的内部获得一个元素需要像:

htmlElement = driver.find_element_by_tag_name('html')

def expand_shadow_element(element):
shadow_root = driver.execute_script('return arguments[0].shadowRoot', element)
return shadow_root

shadow_root_under_frame = expand_shadow_element(htmlElement)

然后你可以找到你想要的输入:

inputelement = shadow_root_under_frame.find_element_by_name("login_email")

希望它有所帮助。

答案 1 :(得分:0)



BadTokenException: token null is not valid, is your activity running