使用Selenium + Heroku出现权限拒绝的问题原因和解决方法: 出现这个问题的原因是在Heroku上运行的应用程序无法访问本地计算机的Selenium Webdriver。要解决这个问题,我们需要使用Selenium Grid。 首先在Heroku上创建一个网格节点,将其与Chrome浏览器或其他浏览器连接。然后使用Python的Selenium库将代码运行在Heroku上的网格节点上,而不是本地计算机上。 以下是一个基本的使用Selenium Grid的Python示例代码:
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
# 创建一个Selenium网格的DesiredCapabilities对象
desired_cap = {
'browserName': 'chrome',
'platform': 'LINUX',
'version': ''
}
# 连接到Selenium网格
driver = webdriver.Remote(
command_executor='http://:/wd/hub',
desired_capabilities=desired_cap)
# 输入测试代码
driver.get("")
# 等待一段时间,确保页面已加载
time.sleep(10)
# 关闭连接和浏览器
driver.quit()
在以上代码中,