pnpm install puppeteer -D
npm run build
git add .
git commit -m "update"
git push origin master
#! /usr/bin/env node
const puppeteer = require("puppeteer")
async function giteeUpdate() {
const browser = await puppeteer.launch({
headless: false
})
const page = await browser.newPage()
await page.goto("https://gitee.com/login")
let accountElements = await page.$x('//*[@id="user_login"]')
await accountElements[0].type("你的账号")
let pwdElements = await page.$x('//*[@id="user_password"]')
await pwdElements[0].type("你的密码")
let loginButtons = await page.$x('//*[@class="git-login-form-fields"]/div[4]/input')
await loginButtons[0].click()
await page.waitForTimeout(1000)
await page.goto("https://gitee.com/jaqi/jaqi.note/pages")
await page.on("dialog", async dialog => {
console.log("确认更新")
dialog.accept()
})
let updateButtons = await page.$x('//*[@id="pages-branch"]/div[6]');
await updateButtons[0].click()
while (true) {
await page.waitForTimeout(15000);
try {
deploying = await page.$x('//*[@id="pages_deploying"]')
if (deploying.length > 0) {
console.log("更新中...")
} else {
console.log("更新完毕")
break
}
} catch (error) {
break
}
}
await page.waitForTimeout(500)
browser.close()
}
giteeUpdate()
参考:自动更新gitee pages,使用node脚本(更新于2023/6/10)