1. const koa = require("koa");
    2. const app = new koa();
    3. const Router = require("koa-router");
    4. const router = new Router();
    5. const cheerio = require("cheerio");
    6. const url = "https://y.qq.com/"
    7. const PCR = require("puppeteer-chromium-resolver");
    8. router.get("/", async ctx => {
    9. const stats = await PCR();
    10. const browser = await stats.puppeteer.launch({
    11. headless: true,
    12. args: ["--no-sandbox"],
    13. executablePath: stats.executablePath
    14. }).catch(function(error) {
    15. console.log(error);
    16. });
    17. const page = await browser.newPage();
    18. await page.goto(url);
    19. await page.waitForTimeout(3000)
    20. var content = await page.content();
    21. // 建议使用puppeteer,cheerio不能爬取动态页面
    22. var $ = cheerio.load(content,{
    23. decodeEntities:false
    24. })
    25. var slide = $(".mod_slide .mv_list__list:nth-child(1)").html();
    26. console.log(slide)
    27. })
    28. app.use(router.routes());
    29. app.listen(8000)
    1. {
    2. "name": "bishe",
    3. "version": "1.0.0",
    4. "description": "",
    5. "main": "index.js",
    6. "scripts": {
    7. "start": "nodemon index.js"
    8. },
    9. "keywords": [],
    10. "author": "",
    11. "license": "ISC",
    12. "dependencies": {
    13. "axios": "^0.21.1",
    14. "cheerio": "^1.0.0-rc.5",
    15. "koa": "^2.13.1",
    16. "koa-router": "^10.0.0",
    17. "koa2-cors": "^2.0.6",
    18. "nodemon": "^2.0.7",
    19. "puppeteer-chromium-resolver": "^8.0.0"
    20. }
    21. }