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

如何将GitHub Actions运行操作系统从macOS切换至Windows或Ubuntu?

切换GitHub Actions运行系统(从macOS到Ubuntu/Windows)的配置修改方法

核心修改点

只需要修改工作流YML中runs-on字段的值,就能切换运行系统,你的R爬虫脚本在Ubuntu/Windows环境下可正常运行:

  • 若切换到Ubuntu(成本最低,分钟额度消耗仅为macOS的1/10):将runs-on: macos-latest替换为runs-on: ubuntu-latest
  • 若切换到Windows(分钟额度消耗为macOS的1/2):将runs-on: macos-latest替换为runs-on: windows-latest

修改后的Ubuntu版本完整配置

# 定时爬虫任务
name: amazonR Polite Price Checker

# 触发时机:每周一、周四0点(UTC时间)
on:
  schedule:
    - cron: '0 0 * * 1,4'

jobs:
  autoscrape:
    # 切换为Ubuntu最新版运行器
    runs-on: ubuntu-latest

    # 拉取代码并安装R环境
    steps:
    - uses: actions/checkout@master
    - uses: r-lib/actions/setup-r@master

    # 安装R依赖包
    - name: Install packages
      run: |
        R -e 'install.packages(c("tidyverse", "tibble", "openxlsx", "gdata", "lubridate", "rvest", "stringr", "dplyr", "purrr", "plyr", "polite", "xml2", "gt", "blastula"))'
            
    # 运行爬虫脚本
    - name: Scrape with the polite package
      env:
          EMAIL_SENDER: ${{ secrets.EMAIL_SENDER }}
          EMAIL_PASSWORD: ${{ secrets.EMAIL_PASSWORD }}
          EMAIL_RECIPIENT: ${{ secrets.EMAIL_RECIPIENT }}
          EMAIL_CC_1: ${{ secrets.EMAIL_CC_1 }}
          EMAIL_CC_2: ${{ secrets.EMAIL_CC_2 }}
          EMAIL_CC_3: ${{ secrets.EMAIL_CC_3 }}
      
      run: Rscript polite_price_checker.R

    # 提交并推送更新的文件
    - name: Commit files
      run: |
        git config --local user.name github-actions
        git config --local user.email "actions@github.com"
        git add polite_price/*
        git commit -am "GH ACTION Autorun POLITE PRICE $(date)"
        git push origin main --force
      env:
        REPO_KEY: ${{secrets.GITHUB_TOKEN}}
        username: github-actions

额外优化建议

原配置中多次调用R -e 'install.packages()'会增加运行时间,可将所有包合并到一个install.packages()调用中(如上面的配置所示),进一步节省分钟额度。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 19:20:59