name: weekly-crawl on: schedule: - cron: "0 0 * * 1" # 週一 00:00 UTC ≈ 台北 08:00 workflow_dispatch: {} jobs: crawl-and-mail: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.11" - run: pip install scrapy - name: Run crawler run: scrapy crawl hbr - name: Send mail with CSV env: GMAIL_USERNAME: ${{ secrets.GMAIL_USERNAME }} GMAIL_APP_PASSWORD: ${{ secrets.GMAIL_APP_PASSWORD }} MAIL_TO: ${{ secrets.MAIL_TO }} run: | python send_mail.py hbr_articles.csv - name: Upload CSV as artifact (optional) uses: actions/upload-artifact@v4 with: name: hbr_articles_csv path: hbr_articles.csv