78 lines
2.3 KiB
JavaScript
78 lines
2.3 KiB
JavaScript
/**
|
|
* 检查微博发送状态
|
|
*/
|
|
|
|
const puppeteer = require('puppeteer-core');
|
|
const { getLaunchOptions } = require('../config/browser');
|
|
const fs = require('fs');
|
|
|
|
const COOKIE_FILE = '/home/ubuntu/weibo_cookies.txt';
|
|
|
|
const delay = (ms) => new Promise(resolve => setTimeout(resolve, ms));
|
|
|
|
async function checkStatus() {
|
|
console.log('🔍 检查发送状态...');
|
|
|
|
const browser = await puppeteer.launch({
|
|
...getLaunchOptions(),
|
|
headless: true,
|
|
});
|
|
|
|
try {
|
|
const page = await browser.newPage();
|
|
await page.setViewport({ width: 1280, height: 900 });
|
|
|
|
// 加载 Cookie
|
|
const cookies = JSON.parse(fs.readFileSync(COOKIE_FILE, 'utf-8'));
|
|
await page.goto('https://weibo.com', { waitUntil: 'domcontentloaded' });
|
|
|
|
for (const c of cookies) {
|
|
try {
|
|
await page.setCookie({
|
|
name: c.name,
|
|
value: c.value,
|
|
domain: c.domain,
|
|
path: c.path || '/'
|
|
});
|
|
} catch (e) {}
|
|
}
|
|
|
|
// 访问个人主页查看最新微博
|
|
await page.goto('https://weibo.com/u/me?tabtype=weibo', { waitUntil: 'networkidle2' });
|
|
await delay(3000);
|
|
|
|
await page.screenshot({ path: '/tmp/weibo_login/check_status.png' });
|
|
|
|
// 获取最新的几条微博
|
|
const posts = await page.evaluate(() => {
|
|
const items = Array.from(document.querySelectorAll('[class*="card"], [class*="item"], article'));
|
|
return items.slice(0, 3).map(item => {
|
|
const text = item.textContent || '';
|
|
const time = item.querySelector('time, [class*="time"], [class*="date"]')?.textContent || '';
|
|
return { text: text.substring(0, 200), time };
|
|
});
|
|
});
|
|
|
|
console.log('\n📱 最新微博内容:');
|
|
posts.forEach((post, i) => {
|
|
console.log(`\n[${i + 1}] ${post.time}`);
|
|
console.log(` ${post.text.substring(0, 100)}...`);
|
|
});
|
|
|
|
// 检查是否有刚刚发的测试微博
|
|
const hasTestPost = posts.some(p => p.text.includes('自动化脚本') || p.text.includes('🤖'));
|
|
if (hasTestPost) {
|
|
console.log('\n✅ 找到了测试微博!');
|
|
} else {
|
|
console.log('\n⚠️ 未找到测试微博,可能发送失败了');
|
|
}
|
|
|
|
} catch (error) {
|
|
console.error('❌ 错误:', error.message);
|
|
} finally {
|
|
await browser.close();
|
|
}
|
|
}
|
|
|
|
checkStatus().catch(console.error);
|