2017-09-04 40 views
3

的问题

我试图更改数据库的页面(ReferenceUSA,需要支付或大学的证书)和点击回车,但是捕捉的是搜索框在div标签中。 send_keys()仅适用于输入和textarea标记。这里的page navigator的图片,这里的HTML:Python的硒send_keys()使用硒通过键入页码非输入标签

<div class="pager"> 
 
<div class="prev button" title="Hold down to scroll through records faster." style="float: left;">«</div> 
 
<div class="page" style="text-align: center; margin: 0px 1em; float: left; width: 40px;">1</div> 
 
<div class="next button" title="Hold down to scroll through records faster.">»</div><span style="clear: both;"></span></div>

我尝试

我想通了如何改变innerHTML的,所以我真的只需要点击进入在div标签上。我想到并尝试更改下一个按钮的innerHTML(例如,如果我想导航到页面1208,可将当前页面设置为next_button()函数中的1207),但函数全部写入该站点的全局文件中,数千并且它们都使用相同的6个变量互相馈送,使其基本上不可读。我把这个问题带给了我的一位CS教授,但无济于事。

必须有一个简单的解决方案,但我现在亏本了。我将不胜感激,如果有人可以提供一些指导

+0

截图和html将有所帮助。 – TheChetan

+0

另外如何击中div标签输入帮助? – TheChetan

+0

我不认为'sendKeys'只能在'input'和'textarea'上工作,在'div'上使用'sendKeys'时会出现什么错误? –

回答

0

更新:

最后我干脆报废硒和想出如何使用请求模块来做到这一点。以下是代码为我的解决办法的片段:

选择起始页

data_data = { 
    'requestKey': page_data, # Collected earlier in the code 
    'direction': 'Ascending', # Collected with Chrome DevTools 
    'pageIndex': page_index # Page number - 1 
} 
data = r.post(SELECT_PAGE, data = data_data) 

而不是点击硒的按钮,我每天的页面数量改变我发送POST请求的时候想通了,所以我刚发送POST请求。