You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Python Runbook执行Selenium脚本遇网络错误求助

问题解答

1. 该场景是否支持?

Azure自动化账户的Python Runbook可以支持Selenium爬虫,但存在明确的环境限制:

  • 自动化账户的沙箱是无UI临时环境,默认未预装Chrome/Firefox等浏览器,也不允许直接安装桌面应用程序。
  • 你遇到的[WinError 10050]错误,核心原因是ChromeDriver尝试启动浏览器时,沙箱环境不支持浏览器的网络套接字操作,或缺少浏览器依赖导致启动失败,进而触发网络连接异常。

2. 是否需要安装Chrome?

需要,但常规安装方式在自动化账户沙箱中不可行,需改用带Headless模式的Chromium二进制文件:

  • 下载与ChromeDriver版本严格匹配的Chromium压缩包,上传到Azure存储Blob容器;
  • 在Runbook执行时,先将压缩包下载到沙箱临时目录(如C:\Temp)并解压,让Selenium调用本地的Chromium文件。

3. Headless模式是否可行?

完全可行,这是Azure自动化账户中运行Selenium的标准方案。示例代码片段:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
import requests
import zipfile

# 初始化临时目录
temp_dir = "C:\\Temp"
os.makedirs(temp_dir, exist_ok=True)

# 从Blob存储下载Chromium压缩包(需提前生成带SAS令牌的Blob URL)
chromium_zip_path = os.path.join(temp_dir, "chromium.zip")
response = requests.get("你的Chromium压缩包SAS URL", timeout=30)
with open(chromium_zip_path, "wb") as f:
    f.write(response.content)

# 解压Chromium
with zipfile.ZipFile(chromium_zip_path, 'r') as zip_ref:
    zip_ref.extractall(temp_dir)

# 配置Chrome选项
chrome_options = Options()
chrome_options.add_argument("--headless=new")
chrome_options.add_argument("--no-sandbox")
chrome_options.add_argument("--disable-dev-shm-usage")
chrome_options.add_argument("--disable-gpu")
chrome_options.binary_location = os.path.join(temp_dir, "chromium", "chrome.exe")

# 初始化WebDriver
driver = webdriver.Chrome(
    executable_path=os.path.join(temp_dir, "chromedriver.exe"),
    options=chrome_options
)

# 爬虫逻辑示例
driver.get("目标网站URL")
# ... 你的爬取代码

driver.quit()

额外注意事项

  • 版本严格匹配:Chromium、ChromeDriver、Selenium三者版本必须完全对应,否则会出现启动失败或兼容性问题。
  • 第三方依赖管理:脚本用到的非标准库(如pandas),需提前上传对应的whl包到自动化账户的Python包管理中。
  • 沙箱资源限制:临时目录C:\Temp最大可用空间为1GB,执行完后建议清理临时文件;Runbook单次执行时限为3小时,需确保爬虫逻辑在时限内完成。
  • 反爬与网络适配:若仍出现网络错误,检查目标网站是否有IP封禁机制,可添加自定义User-Agent请求头,或通过自动化账户的虚拟网络集成功能指定访问VNet。

内容的提问来源于stack exchange,提问作者Carrie Ha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 15:48:28