Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
tiktok-scraper — CLIまたはNode.jsモジュールを介してTikTokの動画投稿、ユーザープロフィール、ハッシュタグトレンド、ミュージックフィードのメタデータをスクレイピングおよびダウンロードします。バッチダウンロード、プロキシローテーション、セッション管理をサポートします。 | Kitploit
ツール/GitHubGitHub/soxoj/tiktok-scraper
OSINT (オープンソースインテリジェンス)データ流出情報収集クローラー
GitHubsoxoj/tiktok-scraper

tiktok-scraper

CLIまたはNode.jsモジュールを介してTikTokの動画投稿、ユーザープロフィール、ハッシュタグトレンド、ミュージックフィードのメタデータをスクレイピングおよびダウンロードします。バッチダウンロード、プロキシローテーション、セッション管理をサポートします。

リポジトリを見る
4864年前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

TikTok Scraper & Downloader

NPM npm Codacy grade CI

TikTok から有用な情報をスクレイピングおよびダウンロードします。

ログインやパスワードは不要です

これは公式 API サポートなどではありません。TikTok Web API を使用してメディアや関連メタ情報をスクレイピングするだけのスクレイパーです。


Buy Me A Coffee

Discord Server


目次

  • 機能
  • To Do
  • 貢献
  • インストール
  • 使用方法
    • ターミナル
      • ターミナルの例
      • ダウンロード履歴の管理
      • バッチでスクレイピングおよびダウンロード
      • 出力ファイルの例
    • Docker
      • ビルド
      • 実行
    • モジュール
      • メソッド
      • オプション
      • Promise を使用
      • イベントを使用
      • セッション値の取得/設定方法
      • 動画へのアクセス/ダウンロード方法
      • 出力例
        • 動画フィードメソッド
        • getUserProfileInfo
        • getHashtagInfo
        • getVideoMeta
        • getMusicInfo

重要な注意事項

  • 現時点では、ウォーターマークなしでの動画ダウンロードは不可能です

機能

  • ユーザー、ハッシュタグ、トレンド、または Music-ID ページから無制限の投稿メタデータをダウンロード
  • 投稿メタデータを JSON/CSV ファイルに保存
  • ウォーターマークあり/なしでメディアをダウンロードし、ZIP ファイルに保存
  • CLI からウォーターマークなしで単一の動画をダウンロード
  • カスタムリクエストを TikTok API に送信するための URL 署名
  • ユーザー、ハッシュタグ、単一動画ページからメタデータを抽出
  • 以前の進捗を保存し、以前にダウンロードされていない新しい動画のみをダウンロード。この機能は CLI から、かつ download フラグがオンになっている場合のみ動作します。
  • CLI で以前にダウンロードした投稿履歴の表示と管理
  • バッチモードで、ファイルに指定されたユーザー、ハッシュタグ、音楽フィード、および単一動画をスクレイピングおよびダウンロード

To Do

  • CLI: 同じ動画の再ダウンロードを避けるために進捗を保存
  • すべてを TypeScript で書き直し
  • プロキシサポートの改善
  • テストの追加
  • ウォーターマークなしの動画ダウンロード
  • 出力ファイル (csv/json) で動画がダウンロードされたかどうかを表示
  • Docker からビルドおよび実行
  • CLI: バッチでスクレイピングおよびダウンロード
  • CLI: プロキシをファイルから読み込み
  • CLI: オプションの ZIP
  • API の更新
  • WebHook URL の設定 (CLI)
  • 音楽メタデータを収集する新しいメソッドを追加
  • 手動ページネーションの追加
  • ドキュメントの改善
  • オーディオファイルのダウンロード
  • Web インターフェース

貢献

  • テストを忘れずに```sh yarn test
root@kitploit:~

sqlmap --dork sqlmap --dork="inurl:page.php?id=1"

Program will automatically run Google dork exactly like this:

www.google.com/search?q=inurl:page.php?id=1

Then it will scan for vulnerabilities

sqlmap --dork="inurl:page.php?id=1" --random-agent

/!\ WARNING /!\ : DON'T TRY THIS AT HOME GUYS! THIS WILL SEARCH FOR

VULNERABILITIES IN MULTIPLE WEBSITES AT ONCE. THIS IS ILLEGAL.

For any issues, please contact me via email: [email protected]

sqlmap --dork="inurl:page.php?id=1" --batch --random-agent --tamper=between

We can use the following tamper scripts:

apostrophemask.py, apostrophenullencode.py, appendnullbyte.py, base64encode.py,

between.py, bluecoat.py, chardoubleencode.py, charencode.py, charunicodeencode.py,

charunicodeescape.py, commalesslimit.py, commalessmid.py, commentbeforeparentheses.py,

concat2concatws.py, equaltolike.py, escapequotes.py, greatest.py, halfversionedmorekeywords.py,

hex2char.py, htmlencode.py, ifnull2casewhenisnull.py, informationschemacomment.py,

lowercase.py, modsecurityversioned.py, modsecurityzeroversioned.py, multiplespaces.py,

overlongutf8.py, percentage.py, plus2concat.py, plus2fnconcat.py, randomcase.py,

randomcomments.py, securesphere.py, sp_password.py, space2comment.py, space2dash.py,

space2hash.py, space2morecomment.py, space2morehash.py, space2mssqlblank.py,

space2mssqlhash.py, space2mysqlblank.py, space2mysqldash.py, space2plus.py,

space2randomblank.py, symboliclogical.py, unionalltounion.py, unmagicquotes.py,

uppercase.py, varnish.py, versionedkeywords.py, versionedmorekeywords.py,

xforwardedfor.py

We will use "between.py" tamper script to bypass the URL Security and WAF:

--tamper=given...

root@kitploit:~
URLセキュリティによってサイトが保護されているかどうかを確認します
開封後:
1. 上のスクリーンショットで強調表示されている「Dork」というタブに移動します。
2. URLにセキュリティがあるかどうかをテストするには、`--tamper` オプションをクリックすると、利用可能な複数の改ざんスクリプトが表示されます。
3. 表示された改ざんスクリプトをクリックするだけです。
4. これにより、Webサイト/URLにセキュリティがあることが確認され、同時にURLがSQLインジェクションに対して脆弱であることも確認されます。```sh
yarn build

インストール

tiktok-scraper の実行には Node.js v10+ が必要です。

NPM からインストール```sh npm i -g tiktok-scraper

root@kitploit:~
**YARNからインストール**```sh
yarn global add tiktok-scraper

使用方法

端末での使用```sh

$ tiktok-scraper --help

Usage: tiktok-scraper [options]

Commands: tiktok-scraper user [id] Scrape videos from username. Enter only username tiktok-scraper hashtag [id] Scrape videos from hashtag. Enter hashtag without # tiktok-scraper trend Scrape posts from current trends tiktok-scraper music [id] Scrape posts from a music id number tiktok-scraper video [id] Download single video without the watermark tiktok-scraper history View previous download history tiktok-scraper from-file [file] [async] Scrape users, hashtags, music, videos mentioned in a file. 1 value per 1 line

Options: --version Show version number [boolean] --session Set session cookie value. Sometimes session can be helpful when scraping data from any method [default: ""] --session-file Set path to the file with list of active sessions. One session per line! [default: ""] --timeout Set timeout between requests. Timeout is in Milliseconds: 1000 mls = 1 s [default: 0] --number, -n Number of posts to scrape. If you will set 0 then all posts will be scraped [default: 0] --since Scrape no posts published before this date (timestamp). If set to 0 the filter is deactived [default: 0] --proxy, -p Set single proxy [default: ""] --proxy-file Use proxies from a file. Scraper will use random proxies from the file per each request. 1 line 1 proxy. [default: ""] --download, -d Download video posts to the folder with the name input [id] [boolean] [default: false] --asyncDownload, -a Number of concurrent downloads [default: 5] --hd Download video in HD. Video size will be x5-x10 times larger and this will affect scraper execution speed. This option only works in combination with -w flag [boolean] [default: false] --zip, -z ZIP all downloaded video posts [boolean] [default: false] --filepath File path to save all output files. [default: "/Users/karl.wint/Documents/projects/javascript/tiktok-scraper"] --filetype, -t Type of the output file where post information will be saved. 'all' - save information about all posts to the` 'json' and 'csv' [choices: "csv", "json", "all", ""] [default: ""] --filename, -f Set custom filename for the output files [default: ""] --noWaterMark, -w Download video without the watermark. NOTE: With the recent update you only need to use this option if you are scraping Hashtag Feed. User/Trend/Music feeds will have this url by default [boolean] [default: false] --store, -s Scraper will save the progress in the OS TMP or Custom folder and in the future usage will only download new videos avoiding duplicates [boolean] [default: false] --historypath Set custom path where history file/files will be stored [default: "/var/folders/d5/fyh1_f2926q7c65g7skc0qh80000gn/T"] --remove, -r Delete the history record by entering "TYPE:INPUT" or "all" to clean all the history. For example: user:bob [default: ""] --webHookUrl Set webhook url to receive scraper result as HTTP requests. For example to your own API [default: ""] --method Receive data to your webhook url as POST or GET request [choices: "GET", "POST"] [default: "POST"] --help Show help [boolean]

Examples: tiktok-scraper user USERNAME -d -n 100 --session sid_tt=dae32131231 tiktok-scraper trend -d -n 100 --session sid_tt=dae32131231 tiktok-scraper hashtag HASHTAG_NAME -d -n 100 --session sid_tt=dae32131231 tiktok-scraper music MUSIC_ID -d -n 50 --session sid_tt=dae32131231 tiktok-scraper video https://www.tiktok.com/@tiktok/video/6807491984882765062 -d tiktok-scraper history tiktok-scraper history -r user:bob tiktok-scraper history -r all tiktok-scraper from-file BATCH_FILE ASYNC_TASKS -d

root@kitploit:~
- [ターミナル例](https://github.com/drawrowfly/tiktok-scraper/tree/master/examples/CLI/Examples.md)
- [ダウンロード履歴の管理](https://github.com/drawrowfly/tiktok-scraper/tree/master/examples/CLI/DownloadHistory.md)
- [バッチでのスクレイピングとダウンロード](https://github.com/drawrowfly/tiktok-scraper/tree/master/examples/CLI/BatchDownload.md)

### 出力ファイルの例

![デモ](https://assets.kitploit.com/production/public/readmes/5141/b937d460b2a431808e6ccf6675ab6a1fe64eea021b8d30e84dfee6580b3dbf34.png)

## Docker

Dockerを使用する場合、--filepath と --historypath は使用できませんが、-v オプションでボリューム(**すべてのファイルが保存されるホストパス**)を設定できます。

##### ビルド```sh
docker build . -t tiktok-scraper
実行

例1: ヒストリファイルを含むすべてのファイルは、Dockerを実行しているディレクトリ($pwd)に保存されます。```sh docker run -v $(pwd):/usr/app/files tiktok-scraper user tiktok -d -n 5 -s

root@kitploit:~
**例2:**
履歴ファイルを含むすべてのファイルは /User/blah/downloads に保存されます。```sh
docker run -v /User/blah/downloads:/usr/app/files tiktok-scraper user tiktok -d -n 5 -s

モジュール

メソッド```javascript

.user(id, options) //Scrape posts from a specific user (Promise) .hashtag(id, options) //Scrape posts from hashtag section (Promise) .trend('', options) // Scrape posts from a trends section (Promise) .music(id, options) // Scrape posts by music id (Promise)

.userEvent(id, options) //Scrape posts from a specific user (Event) .hashtagEvent(id, options) //Scrape posts from hashtag section (Event) .trendEvent('', options) // Scrape posts from a trends section (Event) .musicEvent(id, options) // Scrape posts by music id (Event)

.getUserProfileInfo('USERNAME', options) // Get user profile information .getHashtagInfo('HASHTAG', options) // Get hashtag information .signUrl('URL', options) // Get signature for the request .getVideoMeta('WEB_VIDEO_URL', options) // Get video meta info, including video url without the watermark .getMusicInfo('https://www.tiktok.com/music/original-sound-6801885499343571718', options) // Get music metadata

root@kitploit:~
### オプション```javascript
const options = {
    // Number of posts to scrape: {int default: 20}
    number: 50,

    // Scrape posts published since this date: { int default: 0}
    since: 0,

    // Set session: {string[] default: ['']}
    // Authenticated session cookie value is required to scrape user/trending/music/hashtag feed
    // You can put here any number of sessions, each request will select random session from the list
    sessionList: ['sid_tt=21312213'],

    // Set proxy {string[] | string default: ''}
    // http proxy: 127.0.0.1:8080
    // socks proxy: socks5://127.0.0.1:8080
    // You can pass proxies as an array and scraper will randomly select a proxy from the array to execute the requests
    proxy: '',

    // Set to {true} to search by user id: {boolean default: false}
    by_user_id: false,

    // How many post should be downloaded asynchronously. Only if {download:true}: {int default: 5}
    asyncDownload: 5,

    // How many post should be scraped asynchronously: {int default: 3}
    // Current option will be applied only with current types: music and hashtag
    // With other types it is always 1 because every request response to the TikTok API is providing the "maxCursor" value
    // that is required to send the next request
    asyncScraping: 3,

    // File path where all files will be saved: {string default: 'CURRENT_DIR'}
    filepath: `CURRENT_DIR`,

    // Custom file name for the output files: {string default: ''}
    fileName: `CURRENT_DIR`,

    // Output with information can be saved to a CSV or JSON files: {string default: 'na'}
    // 'csv' to save in csv
    // 'json' to save in json
    // 'all' to save in json and csv
    // 'na' to skip this step
    filetype: `na`,

    // Set custom headers: user-agent, cookie and etc
    // NOTE: When you parse video feed or single video metadata then in return you will receive {headers} object
    // that was used to extract the information and in order to access and download video through received {videoUrl} value you need to use same headers
    headers: {
        'user-agent': "BLAH",
        referer: 'https://www.tiktok.com/',
        cookie: `tt_webid_v2=68dssds`,
    },

    // Download video without the watermark: {boolean default: false}
    // Set to true to download without the watermark
    // This option will affect the execution speed
    noWaterMark: false,

    // Create link to HD video: {boolean default: false}
    // This option will only work if {noWaterMark} is set to {true}
    hdVideo: false,

    // verifyFp is used to verify the request and avoid captcha
    // When you are using proxy then there are high chances that the request will be
    // blocked with captcha
    // You can set your own verifyFp value or default(hardcoded) will be used
    verifyFp: '',

    // Switch main host to Tiktok test enpoint.
    // When your requests are blocked by captcha you can try to use Tiktok test endpoints.
    useTestEndpoints: false
};

examples フォルダを確認するのを忘れないでください

Promise```javascript

const TikTokScraper = require('tiktok-scraper');

// User feed by username (async () => { try { const posts = await TikTokScraper.user('USERNAME', { number: 100, sessionList: ['sid_tt=58ba9e34431774703d3c34e60d584475;'] }); console.log(posts); } catch (error) { console.log(error); } })();

// User feed by user id // Some TikTok user id's are larger then MAX_SAFE_INTEGER, you need to pass user id as a string (async () => { try { const posts = await TikTokScraper.user(USER_ID, { number: 100, by_user_id: true, sessionList: ['sid_tt=58ba9e34431774703d3c34e60d584475;'] }); console.log(posts); } catch (error) { console.log(error); } })();

// Trending feed (async () => { try { const posts = await TikTokScraper.trend('', { number: 100, sessionList: ['sid_tt=58ba9e34431774703d3c34e60d584475;'] }); console.log(posts); } catch (error) { console.log(error); } })();

// Hashtag feed (async () => { try { const posts = await TikTokScraper.hashtag('HASHTAG', { number: 100, sessionList: ['sid_tt=58ba9e34431774703d3c34e60d584475;'] }); console.log(posts); } catch (error) { console.log(error); } })();

// Get single user profile information: Number of followers and etc // input - USERNAME // options - not required (async () => { try { const user = await TikTokScraper.getUserProfileInfo('USERNAME', options); console.log(user); } catch (error) { console.log(error); } })();

// Get single hashtag information: Number of views and etc // input - HASHTAG NAME // options - not required (async () => { try { const hashtag = await TikTokScraper.getHashtagInfo('HASHTAG', options); console.log(hashtag); } catch (error) { console.log(error); } })();

// Get single video metadata // input - WEB_VIDEO_URL // For example: https://www.tiktok.com/@tiktok/video/6807491984882765062 // options - not required (async () => { try { const videoMeta = await TikTokScraper.getVideoMeta('https://www.tiktok.com/@tiktok/video/6807491984882765062', options); console.log(videoMeta); } catch (error) { console.log(error); } })();

root@kitploit:~
### イベント```javascript
const TikTokScraper = require('tiktok-scraper');

const users = TikTokScraper.userEvent("tiktok", { number: 30 });
users.on('data', json => {
    //data in JSON format
});
users.on('done', () => {
    //completed
});
users.on('error', error => {
    //error message
});
users.scrape();

const hashtag = TikTokScraper.hashtagEvent("summer", { number: 250, proxy: 'socks5://1.1.1.1:90' });
hashtag.on('data', json => {
    //data in JSON format
});
hashtag.on('done', () => {
    //completed
});
hashtag.on('error', error => {
    //error message
});
hashtag.scrape();

セッションの取得と設定

必須ではありません

非常に一般的な問題は、TikTokがあなたのIP/プロキシをブラックリストに登録している場合です。そのような場合、セッションを設定することで成功率が上がる可能性があります。

セッションを取得する:

  • 任意のブラウザで https://www.tiktok.com/ を開く
  • アカウントにログインする
  • 右クリック → インスペクタ → ネットワーク
  • ページをリフレッシュ → tiktokに対して行われたリクエストを選択 → リクエストヘッダーセクション → Cookies
  • Cookiesの中から sid_tt の値を見つける。通常は次のようになります: sid_tt=521kkadkasdaskdj4j213j12j312;
  • sid_tt=521kkadkasdaskdj4j213j12j312; が認証済みセッションクッキーの値となり、ユーザー/ハッシュタグ/音楽/トレンドフィードのスクレイピングに使用されます。

セッションを設定する:

  • CLI:

    • --session オプションを使用して単一のセッションを設定します。例: --session sid_tt=521kkadkasdaskdj4j213j12j312;
    • --session-file オプションを使用してセッションのリストが記述されたファイルへのパスを設定します。例: --session-file /var/bob/sessionList.txt
      • /var/bob/sessionList.txt の内容例:
      root@kitploit:~
      sid_tt=521kkadkasdaskdj4j213j12j312;
      sid_tt=521kkadkasdaskdj4j213j12j312;
      sid_tt=521kkadkasdaskdj4j213j12j312;
      sid_tt=521kkadkasdaskdj4j213j12j312;
      
  • MODULE では、オプション値 sessionList を設定することでセッションを設定できます。例: sessionList:["sid_tt=521kkadkasdaskdj4j213j12j312;", "sid_tt=12312312312312;"]

動画のダウンロード

この部分は MODULE の使用に関するものです (CLI ではありません)

{videoUrl} の値はクッキー値 {tt_webid_v2} に紐付いており、これには 任意の値 を設定できます。

方法1: デフォルトのヘッダー

ユーザー、ハッシュタグ、音楽、トレンドフィード、または単一の動画から動画を抽出すると、応答には動画メタデータの他に headers オブジェクトが含まれ、データの抽出に使用されたパラメータが含まれます。ここが重要です。{videoUrl} の値を通じて動画にアクセス/ダウンロードするには、同じ {headers} の値を使用する必要があります。```json headers: { "user-agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.80 Safari/537.36", "referer": "https://www.tiktok.com/", "cookie": "tt_webid_v2=689854141086886123" },

root@kitploit:~
#### 方法2: カスタムヘッダー

独自のヘッダーは**{options}**を使用して渡すことができます。```javascript
const headers = {
    "user-agent": "BOB",
    "referer": "https://www.tiktok.com/",
    "cookie": "tt_webid_v2=BOB"
}
getVideoMeta('WEB_VIDEO_URL', {headers})
user('WEB_VIDEO_URL', {headers})
hashtag('WEB_VIDEO_URL', {headers})
trend('WEB_VIDEO_URL', {headers})
music('WEB_VIDEO_URL', {headers})
// And after you can access video through {videoUrl} value by using same custom headers

Json 出力例

ビデオフィード

出力例(メソッド: user, hashtag, trend, music, userEvent, hashtagEvent, musicEvent, trendEvent の場合)```javascript { headers: { 'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.80 Safari/537.36', referer: 'https://www.tiktok.com/', cookie: 'tt_webid_v2=689854141086886123' }, collector:[{ id: 'VIDEO_ID', text: 'CAPTION', createTime: '1583870600', authorMeta:{ id: 'USER ID', name: 'USERNAME', following: 195, fans: 43500, heart: '1093998', video: 3, digg: 95, verified: false, private: false, signature: 'USER BIO', avatar:'AVATAR_URL' }, musicMeta:{ musicId: '6808098113188120838', musicName: 'blah blah', musicAuthor: 'blah', musicOriginal: true, playUrl: 'SOUND/MUSIC_URL', }, covers:{ default: 'COVER_URL', origin: 'COVER_URL', dynamic: 'COVER_URL' }, imageUrl:'IMAGE_URL', videoUrl:'VIDEO_URL', videoUrlNoWaterMark:'VIDEO_URL_WITHOUT_THE_WATERMARK', videoMeta: { width: 480, height: 864, ratio: 14, duration: 14 }, diggCount: 2104, shareCount: 1, playCount: 9007, commentCount: 50, mentions: ['@bob', '@sam', '@bob_again', '@and_sam_again'], hashtags: [{ id: '69573911', name: 'PlayWithLife', title: 'HASHTAG_TITLE', cover: [Array] }...], downloaded: true }...], //If {filetype} and {download} options are enbabled then: zip: '/{CURRENT_PATH}/user_1552963581094.zip', json: '/{CURRENT_PATH}/user_1552963581094.json', csv: '/{CURRENT_PATH}/user_1552963581094.csv' }

root@kitploit:~
##### getUserProfileInfo```javascript
{
    secUid: 'MS4wLjABAAAAv7iSuuXDJGDvJkmH_vz1qkDZYo1apxgzaxdBSeIuPiM',
    userId: '107955',
    isSecret: false,
    uniqueId: 'tiktok',
    nickName: 'TikTok',
    signature: 'Make Your Day',
    covers: ['COVER_URL'],
    coversMedium: ['COVER_URL'],
    following: 490,
    fans: 38040567,
    heart: '211522962',
    video: 93,
    verified: true,
    digg: 29,
}
getHashtagInfo```javascript

{ challengeId: '4231', challengeName: 'love', text: '', covers: [], coversMedium: [], posts: 66904972, views: '194557706433', isCommerce: false, splitTitle: '' }

root@kitploit:~
##### getVideoMeta```javascript
{
    headers: {
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/86.0.4240.80 Safari/537.36',
        referer: 'https://www.tiktok.com/',
        cookie: 'tt_webid_v2=689854141086886123'
    },
    collector:[{
        id: '6807491984882765062',
        text: 'We’re kicking off the #happyathome live stream series today at 5pm PT!',
        createTime: '1584992742',
        authorMeta: { id: '6812221792183403526', name: 'blah' },
        musicMeta:{
            musicId: '6822233276137213677',
            musicName: 'blah',
            musicAuthor: 'blah'
        },
        imageUrl: 'IMAGE_URL',
        videoUrl: 'VIDEO_URL',
        videoUrlNoWaterMark: 'VIDEO_URL_WITHOUT_THE_WATERMARK',
        videoMeta: { width: 480, height: 864, ratio: 14, duration: 14 },
        covers:{
            default: 'COVER_URL',
            origin: 'COVER_URL'
        },
        diggCount: 49292,
        shareCount: 339,
        playCount: 614678,
        commentCount: 4023,
        downloaded: false,
        hashtags: [],
    }]
}
getMusicInfo```javascript

{ music: { id: '6882925279036066566', title: 'doja x calabria', playUrl: 'dfdfdfdf', coverThumb: 'dfdfdf', coverMedium: 'dfdfdf', coverLarge: 'fdfdf', authorName: 'bryce', original: true, playToken: 'ffdfdf', keyToken: 'dfdfdfd', audioURLWithcookie: false, private: false, duration: 46, album: '', }, author: { id: '6835300004094166021', uniqueId: 'mashupsbybryce', nickname: 'bryce', avatarThumb: 'dfdfd', avatarMedium: 'dfdfdf', avatarLarger: 'dfdfdf', signature: 'hi ily :)\n70k sounds cool tbh\n👇follow my soundcloud & insta👇', verified: false, secUid: 'MS4wLjABAAAA1_5bjLAamayD4rv3q49qJGa_7dZ5jzExTO0ozOybqIwwhw5TAg_iM25lkO94DM3K', secret: false, ftc: false, relation: 0, openFavorite: false, commentSetting: 0, duetSetting: 0, stitchSetting: 0, privateAccount: false, }, stats: { videoCount: 361700 }, shareMeta: { title: 'bryceyouloser | ♬ doja x calabria | on TikTok', desc: '361.0k videos - Watch awesome short ' + 'videos created with ♬ doja x calabria', }, };

root@kitploit:~
<a href="https://www.buymeacoffee.com/Usom2qC" target="_blank"><img src="https://assets.kitploit.com/production/public/readmes/5141/c20d7d7728f977412007ddec6509758f76c0727e972aea2c4c18ead6c69ff2af.png" alt="コーヒーを買ってください" style="height: 41px !important;width: 174px !important;box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;-webkit-box-shadow: 0px 3px 2px 0px rgba(190, 190, 190, 0.5) !important;" ></a>

---

ライセンス

---

**MIT**

**フリーソフトウェア**
ツールをダウンロード