Selenium网络驱动程序在heroku上崩溃



我需要在heroku上运行一个完整的chrome浏览器来收集数据。这个浏览器不能是无头的,或者它没有得到我想要的数据。为什么当我尝试初始化驱动程序时,它会崩溃并出现以下错误?

错误:DevToolsActivPort文件不存在

def getDriver():
try:
chrome_options = webdriver.ChromeOptions()
chrome_options.binary_location = os.environ.get("GOOGLE_CHROME_BIN")
# chrome_options.add_argument("--headless")
chrome_options.add_argument("start-maximized")
chrome_options.add_argument("--window-size=1920,1080")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument('--user-agent="Mozilla/5.0 (Windows Phone 10.0 Android 4.2.1 Microsoft Lumia 640 XL LTE) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/12.10166"') 
chrome_options.add_argument("--disable-dev-shm-usage")
driver = webdriver.Chrome(executable_path=os.environ.get("CHROMEDRIVER_PATH"), chrome_options=chrome_options)
return driver    
except Exception:
traceback.print_exc()
print(Exception)

它可以使用--headless选项,但我不能使用它,因为那样我需要的数据就会丢失。

动态内容仍然是无头加载的,这是在heroku上运行的唯一方法,我的问题是广告拦截。我使用了一个ssas来四处查看并获取html内容。

最新更新