Home

Dcard Full Threads

How to get Dcard Full Threads in Power BI

Export public Dcard discussions as one dataset row per thread, ready for bounded conversation analysis or moderation review. dcard.tw is one page of it. A run reads that public list and saves one row per result.

Set up the Apify actor

Apify is where this run is collected. An actor is the program that collects the rows. A task is that program saved with your settings, so the next section can ask for the latest rows. You need a free Apify account.

  1. 01
    Open Dcard Full Threads and click Try for free. Create an Apify account if you do not have one. The Free plan does not ask for a card.
  2. 02
    You are on the input form. Keep the sample for this first run.
    {
    }
  3. 03
    Leave the proxy setting as it is. Click Start and wait until the run says Succeeded.
  4. 04
    Open Storage, then Dataset. You should see id, url, title, content.
  5. 05
    When you want the real list, raise the row limit on the input. The sample is only there so the first run stays small.
  6. 06
    Go back to the input and choose Save as a new task. Name it after this list.
  7. 07
    Open the task. Copy the task ID from the address bar. Excel, Sheets, Power BI, and the other guides ask for this ID.
  8. 08
    On the task, open Schedules and add a weekly run if you want fresh rows. Each run pays the start charge and the charge for the rows. The amounts are in the price list on this page.
  9. 09
    Open Settings, then API & Integrations, and copy an API token. Excel, Sheets, and the other guides put this token in a download link. Anyone with that link can download the rows, so treat it like a password.

How to set up in Power BI

Use the task ID and the API token from Set up the Apify actor, above.

  1. 01
    In Power BI Desktop, choose Home, Get data, Web.
  2. 02
    Paste this address. Replace TASK_ID and YOUR_TOKEN. Choose Anonymous, then Connect.
    https://api.apify.com/v2/actor-tasks/TASK_ID/runs/last/dataset/items?format=json&clean=true&status=SUCCEEDED&token=YOUR_TOKEN
  3. 03
    Load the rows. id, url, title, content, excerpt are the columns to keep.
  4. 04
    After you publish, refresh against that same URL. The weekly schedule from Set up the Apify actor, above, is what puts a new dataset behind the URL.

Schema

Examples come from the actor sample, not a live result.

NameDescriptionExample
idPublic thread ID262047730
urlStable public thread URLhttps://www.dcard.tw/f/mood/p/262047730
titlePublic thread titlePublic thread
contentPublic post textPublic body
excerptPublic post textPublic body
forumIdPublic forum identifiersmood
forumAliasPublic forum identifiersmood
forumNamePublic forum identifiersmood
topicsPublic thread classifications["discussion"]
tagsPublic thread classifications["discussion"]
createdAtPost timestamps2026-01-01T00:00:00.000Z
updatedAtPost timestamps2026-01-01T00:00:00.000Z
likeCountPost engagement totals10
reactionCountPost engagement totals7
reactionsReaction-type counts{"heart": 7}
shareCountOther engagement totals2
quoteCountOther engagement totals1
collectionCountOther engagement totals3
commentCountDcard's exposed comment totals2
totalCommentCountDcard's exposed comment totals2
mediaUrlsPublic post media links["https://..."]
nsfwPublic post flagsfalse
pinnedPublic post flagsfalse
moderationVisible deletion and moderation state{"state": "visible"}
postCompletenessWhether full post content was available, plus its public source{"complete": false, "source": "public_feed_summary"}
commentsRoot comments with recursive replies[{"depth": 0, "replies": [...]}]
commentsCompletenessCounts, bounds, errors, and completeness verdict{"expected": 2, "returned": 2, "complete": true}
  • idPublic thread ID262047730
  • urlStable public thread URLhttps://www.dcard.tw/f/mood/p/262047730
  • titlePublic thread titlePublic thread
  • contentPublic post textPublic body
  • excerptPublic post textPublic body
  • forumIdPublic forum identifiersmood
  • forumAliasPublic forum identifiersmood
  • forumNamePublic forum identifiersmood
  • topicsPublic thread classifications["discussion"]
  • tagsPublic thread classifications["discussion"]
  • createdAtPost timestamps2026-01-01T00:00:00.000Z
  • updatedAtPost timestamps2026-01-01T00:00:00.000Z
  • likeCountPost engagement totals10
  • reactionCountPost engagement totals7
  • reactionsReaction-type counts{"heart": 7}
  • shareCountOther engagement totals2
  • quoteCountOther engagement totals1
  • collectionCountOther engagement totals3
  • commentCountDcard's exposed comment totals2
  • totalCommentCountDcard's exposed comment totals2
  • mediaUrlsPublic post media links["https://..."]
  • nsfwPublic post flagsfalse
  • pinnedPublic post flagsfalse
  • moderationVisible deletion and moderation state{"state": "visible"}
  • postCompletenessWhether full post content was available, plus its public source{"complete": false, "source": "public_feed_summary"}
  • commentsRoot comments with recursive replies[{"depth": 0, "replies": [...]}]
  • commentsCompletenessCounts, bounds, errors, and completeness verdict{"expected": 2, "returned": 2, "complete": true}