我在asp.net核心中有一个应用程序,其中使用了硒chromewebdriver。此应用程序用于Web抓取,该抓取在我的本地IIS Express上很麻烦。我的问题是,我想在Azure上部署此应用程序,以便可以运行无头chrome浏览器。我设法做到了,但是我遇到了一个错误:
“未知错误:找不到Chrome二进制文件”
所以我提取了铬,但没有帮助,另一个错误:
”未知错误:无法创建Chrome进程。 (驱动程序信息:chromedriver = 2.45.615291(ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387),platform = Windows NT 10.0.14393 x86_64)“
我听说过Azure WebJobs,但是它限制为50MB。
有可能吗?
答案 0 :(得分:0)
不,不可能做。您的问题与我下面回答的其他SO线程类似。
InfoQ有一篇新文章Headless Selenium Browsers
,它比较了无头浏览器的5个选项,其中包括Chrome Driver
首先需要安装Chrome
。但是,关于Win32k.sys (User32/GDI32) Restrictions
的Azure Web App沙箱有一个限制。因此,任何需要GDI支持的库都无法在Azure WebApp上运行,甚至包括JBrowser要求libpng
& libgd2
。
因此,使用VM运行无头浏览器是Azure上唯一的一种解决方案。
答案 1 :(得分:-1)
您是否尝试过Html Agility Pack进行抓取?