Чтобы извлечь данные из TikTok в Node.js, вы можете использовать библиотеку веб-скрейпинга, такую ​​как Puppeteer или Cheerio. Обе эти библиотеки позволяют имитировать веб-браузер и взаимодействовать с веб-страницами, включая TikTok, чтобы извлекать из них данные.

Вот пример того, как использовать Puppeteer для извлечения данных из TikTok:

const puppeteer = require('puppeteer');

async function scrape() {
  // Launch a headless browser instance
  const browser = await puppeteer.launch();

  // Open a new page in the browser
  const page = await browser.newPage();

  // Navigate to the TikTok homepage
  await page.goto('https://www.tiktok.com/');

  // Wait for the page to fully load
  await page.waitForSelector('.video-feed-item');

  // Extract the data from the page
  const data = await page.evaluate(() => {
    // Get the videos on the page
    const videos = document.querySelectorAll('.video-feed-item');

    // Extract the data from each video
    return Array.from(videos).map(video => {
      const linkElement = video.querySelector('.cover-inner-wrap a');
      const link = linkElement ? linkElement.getAttribute('href') : null;

      const authorElement = video.querySelector('.author-name a');
      const author = authorElement ? authorElement.innerText : null;

      const titleElement = video.querySelector('.video-title-content');
      const title = titleElement ? titleElement.innerText : null;

      return {
        link,
        author,
        title,
      };
    });
  });

  // Close the browser
  await browser.close();

  // Return the scraped data
  return data;
}

// Scrape the data and log it to the console
scrape().then(console.log);

В приведенном выше коде Puppeteer используется для запуска автономного браузера и перехода на домашнюю страницу TikTok. После полной загрузки страницы Puppeteer использует функцию page.evaluate() для выполнения кода JavaScript на странице и извлечения данных со страницы. Затем данные возвращаются и могут использоваться по мере необходимости.

Кроме того, вы можете использовать Cheerio для извлечения данных из TikTok. Вот пример того, как использовать Cheerio для этого:

const axios = require('axios');
const cheerio = require('cheerio');

async function scrape() {
  // Make an HTTP request to the TikTok homepage
  const response = await axios.get('https://www.tiktok.com/');

  // Parse the HTML response using Cheerio
  const $ = cheerio.load(response.data);

  // Extract the data from the page
  const data = $('.video-feed-item').map((i, video) => {
    const link = $('.cover-inner-wrap a', video).attr('href');
    const author = $('.author-name a', video).text();
    const title = $('.video-title-content', video).text();

    return {
      link,
      author,
      title,
    };
  }).get();