BlackHatWorld scraper & Search — Threads & Full Posts, No Proxy
Pricing
$5.00 / 1,000 results
BlackHatWorld scraper & Search — Threads & Full Posts, No Proxy
Scrape any BlackHatWorld thread straight from its URL — full posts with their images, formatting, links, reactions (and who reacted) and author details — or search the forum and scrape every matching thread. No login or proxy required.
Pricing
$5.00 / 1,000 results
Rating
0.0
(0)
Developer
Red Crawler
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
BlackHatWorld Scraper & Search — Threads & Full Posts
Pull clean, structured data out of BlackHatWorld — either by searching the forum and grabbing every matching result, or by scraping the exact thread URLs you paste in. Threads come back with their full posts: the complete content (with formatting and embedded images preserved), every link, who wrote each post, and the reactions on it — including the full list of who reacted. No account, no login, and no proxy required.
Two ways to use it
Pick one at the top of the input with the Mode selector. Only the fields for the mode you pick are used — everything else is ignored.
| Mode | What it does | You provide |
|---|---|---|
| Search BlackHatWorld | Runs a keyword search and returns every matching result. For threads, each match is fully scraped. | A Search query + optional filters |
| Scrape thread URLs | Skips search entirely and scrapes the exact threads you paste. | One or more Thread URLs |
What you can search
In Search mode, choose a Search type:
| Search type | What you get |
|---|---|
| Search everything | Matches across every content type at once — each row tagged with its type. |
| Search threads | Discussion threads, each scraped for its full post content. |
| Search media | Image-gallery items: title, category, uploader, image URL, tags. |
| Search media comments | Comments left on gallery items. |
| Search profile posts | Status posts left on member profiles. |
| Search tags | Threads carrying a given tag (enter the tag as the query). |
Quick start
To search:
- Set Mode to Search BlackHatWorld.
- Type a Search query (e.g.
instagram automation). - Pick a Search type (default: Search threads).
- (Optional) Narrow with sort order, date range, forum, minimum replies, etc.
- Click Save & start.
To scrape specific threads:
- Set Mode to Scrape thread URLs.
- Paste one or more thread URLs into Thread URLs, e.g.
https://www.blackhatworld.com/seo/the-three-commandments-of-bhw.950872/ - Choose What to scrape from each thread — First post only or All posts (post + replies).
- Click Save & start.
Input fields
| Field | Applies to | Description |
|---|---|---|
| Mode | both | Search BlackHatWorld or Scrape thread URLs. |
| Search query | Search | Keywords to search for. |
| Thread URLs | Scrape | One or more BlackHatWorld thread URLs to scrape directly. |
| Search type | Search | Everything / threads / media / media comments / profile posts / tags. |
| Sort results by | Search | Relevance, most recent, or most replies. |
| Search titles only | Search (threads) | Match the query against thread titles only. |
| Only threads newer / older than | Search | Limit by last-activity date. |
| Started by (usernames) | Search | Only threads started by these members. |
| Posted on profile of (members) | Search (profile posts) | Only posts left on these members' profiles. |
| Limit to forum(s) | Search (threads) | Restrict to one or more forums. |
| Search sub-forums as well | Search (threads) | Also search forums nested inside the chosen ones. |
| Search in categories | Search (media) | Restrict media search to gallery categories. |
| Search child categories as well | Search (media) | Also search categories nested inside the chosen ones. |
| Comments on | Search (media comments) | Limit to comments on media items and/or albums. |
| What to scrape from each thread | both (threads) | First post only or All posts (post + replies). |
| Include who reacted | both (threads) | Also fetch the full reactor list per post (extra time per post). |
| Max posts per thread | both (threads) | Cap posts pulled per thread. 0 = no cap. |
| Minimum replies | Search (threads) | Only threads with at least this many replies. |
| Max results | Search | Stop after this many results. |
Examples
Scrape a thread by URL
Input
{"mode": "scrape","threadUrls": ["https://www.blackhatworld.com/seo/the-three-commandments-of-bhw.950872/"],"threadScope": "all_posts","includeReactors": true}
Output (one dataset record — one post shown, trimmed)
{"title": "The Three Commandments of BHW","url": "https://www.blackhatworld.com/seo/the-three-commandments-of-bhw.950872/","forum": "Brand New to BHW","author": "BlackHat World","date": "2017-06-27T16:33:12+0100","replyCount": 235,"viewCount": 81114,"locked": false,"threadId": "950872","tags": [],"contentFetched": true,"posts": [{"postNumber": "#1","postId": "10170993","permalink": "https://www.blackhatworld.com/seo/the-three-commandments-of-bhw.950872/post-10170993","date": "2017-06-27T16:33:12+0100","author": {"username": "BlackHat World","profileUrl": "https://www.blackhatworld.com/members/blackhat-world.8/","userId": "8","userTitle": "Administrator","banners": ["Staff member", "Moderator"],"joined": "Nov 8, 2005","messages": "157","reactionScore": "514","avatarUrl": "https://www.blackhatworld.com/data/avatars/m/0/8.jpg"},"bodyText": "Hi there! Welcome to BlackHatWorld. It's nice to see another new member looking to join the community…","bodyHtml": "<span style=\"font-size: 18px\">Hi there! Welcome to BlackHatWorld…</span> … <span style=\"color: rgb(184, 49, 47)\">1) Don't sell</span> …","images": ["https://cdn.blackhatworld.com/img155/o/g/s/h/u/j/9/OGsHUJ9.jpg"],"links": [{ "text": "read the rules", "url": "https://www.blackhatworld.com/help/terms" }],"quotes": [],"reactions": {"count": 291,"types": [ { "id": "1", "label": "Like" }, { "id": "3", "label": "Haha" } ],"reactorsInline": ["oth0s", "S234", "InariSunflower"],"reactionsUrl": "https://www.blackhatworld.com/posts/10170993/reactions","reactors": [{ "username": "oth0s", "profileUrl": "https://www.blackhatworld.com/members/oth0s.2333832/", "userId": "2333832", "reaction": "Like", "reactedAt": "2026-06-06T18:12:49+0100" }]}}]}
bodyHtmlkeeps the original formatting, so colored text (e.g. a red rule heading) and in-text links (e.g. read the rules) survive intact.bodyTextis the same content as clean plain text. Set Include who reacted to fill thereactorslist; otherwise you still get the reactioncount, the reactiontypes, and the first fewreactorsInlinenames.
Search threads
Input
{"mode": "search","query": "apify","searchType": "threads","order": "relevance","maxResults": 25,"searchThreadScope": "all_posts"}
Output (one dataset record — same thread shape as above, with its posts array)
{"query": "apify","title": "Custom Apify Agent for Instagram: 200 Profiles/3x Daily","url": "https://www.blackhatworld.com/seo/custom-apify-agent-for-instagram….1796383/","forum": "AI - Artificial Intelligence in Digital Marketing","author": "vittorianicolosi1994","date": "2026-02-25T09:23:15+0000","replyCount": 6,"threadId": "1796383","snippet": "Im looking for custom agent using the Apify framework…","contentFetched": true,"posts": [ "… full post objects, same shape as the Scrape example …" ]}
Search media
Input
{ "mode": "search", "query": "logo", "searchType": "media", "maxResults": 25 }
Output (one dataset record)
{"query": "logo","type": "media","title": "IMG_3679.jpeg","url": "https://www.blackhatworld.com/media/img_3679-jpeg.31355/","mediaId": "31355","category": "Marketplace","author": "JessicaSergey","date": "2026-02-09T13:54:30+0000","commentCount": 0,"tags": ["logo", "logo & brand identity", "rebranding", "mockup"],"thumbnail": "https://www.blackhatworld.com/data/xfmg/thumbnail/31/31355-….jpg","snippet": "Logo, Brand Work and Graphic Designing"}
Search everything, media comments, profile posts, and tags each return their own row shape with a
type(orcontentType) field telling you what kind of result it is.
Output
Every result is one dataset row. You can view, filter, and export it as JSON, CSV, Excel, HTML table, RSS, or via API.
Thread record (search-threads and scrape modes):
title · url · forum · author · avatar · date · replyCount · viewCount · locked · postCount · threadId · tags · snippet · contentFetched · posts[]
Each post in posts[]:
postNumber · postId · permalink · date · lastEdited · author{username, profileUrl, userId, userTitle, banners, joined, messages, reactionScore, avatarUrl} · bodyText · bodyHtml · images[] · links[] · quotes[] · reactions{count, types, reactorsInline, reactionsUrl, reactors[]}
Media / comment / profile-post / tag records carry their own scalar columns (title, url, author, date, category/forum, tags, snippet…) plus a type field.
Status & error reference
| Status | What it means | What to do |
|---|---|---|
| Run finished. Some or zero results pushed. | Open the dataset to view results. | |
| Bad input or an upstream fault. | Check the run log. You are not charged for failed runs. | |
| Run exceeded its timeout. | Re-run; narrow inputs or lower Max results. | |
| You stopped the run manually. | No charge for unpushed results. |
If a run finishes with a single { "success": false, "error": "…" } row, the message tells you what to fix (most often: Search mode with no query, or Scrape mode with no URLs).
Tips & limits
- One mode at a time. In Search mode the Thread URLs are ignored; in Scrape mode the query and search filters are ignored.
- Cost scales with results. In Search mode each thread is fully scraped, so Max results controls run time and cost. Use First post only and Max posts per thread to keep big threads cheap.
- Who-reacted is opt-in. Leave Include who reacted off unless you need the full reactor list — it adds time per post. The reaction count and types are always included.
- Media comments / profile posts are sparse on BlackHatWorld — many keywords return zero of those types. Threads and media are the richest.
Why this scraper is fast
- Speed — a few seconds per page. No browser to boot, no Playwright / Selenium / Puppeteer overhead. Browser-based scrapers typically take 15–60 seconds per page.
- Reliability — zero browser flakiness. No headless-Chromium crashes, no JS-render timeouts, no surprise mid-run failures from a browser quirk.
- Footprint — under 100 MB RAM per run. Lightweight and cheap to run; most browser-based scrapers need 1–4 GB.
Pricing
$5 per 1,000 results. You pay only for results actually returned to your dataset — pay-per-result, billed by Apify. Failed and aborted runs are not charged for unpushed results.
Support
Questions, a data shape you need, or a bug to report? Open an issue on the actor's Issues tab and we'll get back to you.