来自 table 元素的 Selenium 搜索数据
Selenium search data from a table element
我正在尝试使用 Selenium 查找并填写表单,但我必须从 mysql table 中获取 select id。使用 mysql 获取一个项目是没有问题的。问题是当我将变量添加到 selenium 代码时,它给了我这个错误:
Invalid locate values passed in.
这是我的代码:
import pymysql
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='xxx', db='python')
cur = conn.cursor()
z=1
cur.execute("SELECT id_1 FROM deneme WHERE id=%s" %(z))
search = cur.fetchone()
chromedriver = 'C:\chromedriver.exe'
browser = webdriver.Chrome(chromedriver)
browser.get('https://e-okul.meb.gov.tr/')
a = input ("input something when the page is loaded")
Y = input ("write your comments")
element = find_element_by_id(search)
element.send_keys (y)
可能是因为fetchone代码给元素加上了一些
标点。但是我该如何解决这个问题呢?
谢谢
我通过在 fetchone()
方法调用末尾添加 [0] 解决了我的问题。
search = cur.fetchone()[0]
我正在尝试使用 Selenium 查找并填写表单,但我必须从 mysql table 中获取 select id。使用 mysql 获取一个项目是没有问题的。问题是当我将变量添加到 selenium 代码时,它给了我这个错误:
Invalid locate values passed in.
这是我的代码:
import pymysql
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
conn = pymysql.connect(host='localhost', port=3306, user='root', passwd='xxx', db='python')
cur = conn.cursor()
z=1
cur.execute("SELECT id_1 FROM deneme WHERE id=%s" %(z))
search = cur.fetchone()
chromedriver = 'C:\chromedriver.exe'
browser = webdriver.Chrome(chromedriver)
browser.get('https://e-okul.meb.gov.tr/')
a = input ("input something when the page is loaded")
Y = input ("write your comments")
element = find_element_by_id(search)
element.send_keys (y)
可能是因为fetchone代码给元素加上了一些 标点。但是我该如何解决这个问题呢?
谢谢
我通过在 fetchone()
方法调用末尾添加 [0] 解决了我的问题。
search = cur.fetchone()[0]