Test.py 코드 수정
import requests
from bs4 import BeautifulSoup
import csv
import json
response = requests.get("http://paullab.synology.me/stock.html")
response.encoding = 'utf-8'
html = response.text
soup = BeautifulSoup(html, 'html.parser')
oneStep = soup.select('.main')[2]
twoStep = oneStep.select('tbody > tr')[1:]
날짜 = []
종가 = []
전일비 = []
거래량 = []
for i in twoStep:
날짜.append(i.select('td')[0].text)
종가.append(int(i.select('td')[1].text.replace(',', '')))
전일비.append(int(i.select('td')[2].text.replace(',', '')))
거래량.append(int(i.select('td')[6].text.replace(',', '')))
l = []
for i in range(len(날짜)):
l.append({
'날짜':날짜[i],
'종가':종가[i],
'전일비':전일비[i],
'거래량':거래량[i],
})
#파일을 한 번 쓴다.
with open('data.js', "w", encoding="UTF-8-sig") as f_write:
json.dump(l, f_write, ensure_ascii=False, indent=4)
#파일을 다시 읽는다.
data = ""
with open('data.js', "r", encoding="UTF-8-sig") as f:
line = f.readline()
while line:
data += line
line = f.readline()
#파일에 변수명을 추가하여 다시 쓴다.
final_data = f"var data = {data};"
with open('data.js', "w", encoding="UTF-8-sig") as f_write:
f_write.write(final_data)
steps:
- name: Hello world action
with: # Set the secret as an input
super_secret: ${{ secrets.SuperSecret }}
env: # Or as an environment variable
super_secret: ${{ secrets.SuperSecret }}
touch ./date.txt
#!/bin/bash
echo "DATE: $1" >> date.txt
name: planting-grass
# [크론스케쥴러]
on:
schedule:
- cron: '0 0 * * *'
# [push테스트]
#on: [push]
jobs:
task:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: 1) get current date
id: date
run: echo "::set-output name=date::$(date +'%Y-%m-%d')"
- name: 2) Execute commands
run: sh ./task.sh ${{ steps.date.outputs.date }}
- name: 3) git config && commit
run: |
# 이전의 커밋 기록에서 사용자 이름 및 이메일을 자동으로 추출!
git config --global user.name "$(git --no-pager log --format=format:'%an' -n 1)"
git config --global user.email "$(git --no-pager log --format=format:'%ae' -n 1)"
git add date.txt
git commit -m ${{ steps.date.outputs.date }}
- name: 4) github push
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: ${{ github.ref }}
# 동작시퀀스
# 1. 저장소 Fork
# 2. 해당 파일 A, B 절차에 따라 수정
# 3. 수정사항 커밋 후 푸쉬 & Enjoy!
Github Action을 활용한 크롤러 웹 페이지 만들기 by 제주코딩베이스캠프
링크 : https://www.inflearn.com/course/github-action-%ED%81%AC%EB%A1%A4%EB%9F%AC/dashboard