httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering' using Selenium?
httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering' using Selenium?
我试着在亚马逊上找一个元素
def find_amazon_element():
driver = webdriver.Firefox(executable_path=os.path.join('geckodriver'))
driver.maximize_window()
time.sleep(5)
driver.get(url='https://www.amazon.com')
input_field = driver.find_element_by_xpath('//*[@id="twotabsearchtextbox"]')
search_button = driver.find_element_by_xpath('/html/body/div[1]/header/div/div[1]/div[3]/div/form/div[2]/div/input')
input_field.send_keys('vase')
search_button.click()
time.sleep(5)
driver.quit()
if __name__ == "__main__":
find_amazon_element()
但是我得到这个错误
httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering'
这个错误信息...
httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering'
...意味着 getresponse()
方法得到了一个意外的关键字参数 buffering.
根据讨论unexpected keyword argument 'buffering' - python client,这个异常不是停止你的测试执行的异常的来源,但它实际上是在另一个异常时被处理的发生了。
也许完整的 Traceback 会帮助我们以更好的方式调试问题。
但是,我敢肯定,如果您通过 Traceback 进行下去,您会发现一行,...在处理上述异常期间,发生另一个异常:... 错误:
Caused by <class 'ConnectionResetError'>:
[WinError 10054] An existing connection was forcibly closed by the remote host)
根据讨论 ,此错误是由于您正在使用的二进制文件版本之间 不兼容 引起的。
解决方案
确保您使用的二进制文件版本兼容,如下图所示:
我试着在亚马逊上找一个元素
def find_amazon_element():
driver = webdriver.Firefox(executable_path=os.path.join('geckodriver'))
driver.maximize_window()
time.sleep(5)
driver.get(url='https://www.amazon.com')
input_field = driver.find_element_by_xpath('//*[@id="twotabsearchtextbox"]')
search_button = driver.find_element_by_xpath('/html/body/div[1]/header/div/div[1]/div[3]/div/form/div[2]/div/input')
input_field.send_keys('vase')
search_button.click()
time.sleep(5)
driver.quit()
if __name__ == "__main__":
find_amazon_element()
但是我得到这个错误
httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering'
这个错误信息...
httplib_response = conn.getresponse(buffering=True) TypeError: getresponse() got an unexpected keyword argument 'buffering'
...意味着 getresponse()
方法得到了一个意外的关键字参数 buffering.
根据讨论unexpected keyword argument 'buffering' - python client,这个异常不是停止你的测试执行的异常的来源,但它实际上是在另一个异常时被处理的发生了。
也许完整的 Traceback 会帮助我们以更好的方式调试问题。
但是,我敢肯定,如果您通过 Traceback 进行下去,您会发现一行,...在处理上述异常期间,发生另一个异常:... 错误:
Caused by <class 'ConnectionResetError'>:
[WinError 10054] An existing connection was forcibly closed by the remote host)
根据讨论
解决方案
确保您使用的二进制文件版本兼容,如下图所示: