我有一个网页。它需要一个json,然后我通过按钮提交此json。
当我使用sendkeys方法加载json时,它不起作用。
EMPTY_METADATAJSON=get_link("./appconfig.json")
wait.until(EC.presence_of_all_elements_located((By.ID, UIAppPublish.metadata_page_id)))
driver.find_element_by_id(UIAppPublish.metadata_input).send_keys(EMPTY_METADATAJSON)
您能帮我加载json吗?
答案 0 :(得分:1)
将此json分配给一个变量,如下所示:
jsonToEnter = {
"system_service": false,
"version": "1.0.0",
"checksum": "",
"machineConfig": {
"subscriptions": {
"sinumerik_hf_data": {
"payload": [{
"sinumerikUid": "hfdd_data",
"period": 2
}],
"source": "communicationAdapter",
"quality": "high_performance",
"isCloudMessage": false
}
}
}
}
使用WebDriver(I) sendKeys()
通过将json对象封装如下,将与String相同的对象传递到文本框中:
driver.findEement(ElementLocator Of Text box).sendKeys(JSON.stringify(jsonToEnter));
答案 1 :(得分:0)
如果元素具有值属性,您也可以尝试通过Javascript进行设置。 诸如此类(不了解Python,抱歉):
webdriver.executeScript("document.getElementById('UIAppPublish.metadata_page_id').setAttribute('value', jsonToEnter)");