Python EXEC show error: name is not defined
Python EXEC show error: name is not defined
我将 exec 与 selenium 一起使用到 运行,如下所示,
from selenium import webdriver
search_method = 'find_element_by_class_name'
search_word = 'keyword'
exec("elem_search_word = driver." + search_method + "('" + search_word + "')")
elem_search_word.send_keys('python'))
但是我遇到了错误,我该怎么办?
elem_search_word.send_keys(str(args.search))
NameError: name 'elem_search_word' is not defined
我无法重现您的问题,但恕我直言,在这种情况下您应该避免使用 exec()
。试试下面的方法:
search_method = 'class name'
search_word = 'keyword'
elem_search_word = driver.find_element(search_method, search_word)
elem_search_word.send_keys('python')
如果您想按 id
、xpath
、css
搜索...只需将 search_method
设置为适当的值
或者:
from selenium.webdriver.common.by import By
search_method = By.CLASS_NAME
search_word = 'keyword'
elem_search_word = driver.find_element(search_method, search_word)
elem_search_word.send_keys('python')
我将 exec 与 selenium 一起使用到 运行,如下所示,
from selenium import webdriver
search_method = 'find_element_by_class_name'
search_word = 'keyword'
exec("elem_search_word = driver." + search_method + "('" + search_word + "')")
elem_search_word.send_keys('python'))
但是我遇到了错误,我该怎么办?
elem_search_word.send_keys(str(args.search))
NameError: name 'elem_search_word' is not defined
我无法重现您的问题,但恕我直言,在这种情况下您应该避免使用 exec()
。试试下面的方法:
search_method = 'class name'
search_word = 'keyword'
elem_search_word = driver.find_element(search_method, search_word)
elem_search_word.send_keys('python')
如果您想按 id
、xpath
、css
搜索...只需将 search_method
设置为适当的值
或者:
from selenium.webdriver.common.by import By
search_method = By.CLASS_NAME
search_word = 'keyword'
elem_search_word = driver.find_element(search_method, search_word)
elem_search_word.send_keys('python')