Compile the corpus
Four ways to bring texts in
The corpus is the collection of texts you analyze. Use one or more of the four tabs in step 01:
Keyword
Enter search terms and choose Collect texts. By default SemanText collects text URLs from Bing NewsRSS, then retrieves each page at the edge (up to 25 per round). Aggregator, tag, and index pages are excluded before fetching, since they never contain a full text. Use the optionalFrom and To date fields to keep only texts published inside that range; both bounds are optional, so leaving them empty harvests without any date filter. Texts without a usable date are always retained and counted in the results note.
Search providers (free, no signup)
The keyword tab can discover text URLs through either no-cost backend:
- Bing News (default): RSS feed, no key, works from Cloudflare's edge.
- Google News: RSS search feed, no key. Items carry a title, publisher, and publication date, so result rows are enriched even when the publisher page lacks metadata.
URL list
Paste text URLs, one per line, and choose Collect texts. The first 25 URLs are processed per round; repeat to add more.
CSV upload
Upload one or more corpus files in the SemanText CSV format. Files are merged locally; there is no upload to a server. The expected columns are Datetime, Title, Text, URL, TextID, Publication.
Raw text
Paste text directly, or upload .txt files. Each submission becomes a single text and is limited to 100,000 tokens; the token counter under the box shows your position and blocks submissions over the limit. Date-like tokens such as6/9/2026 are kept intact by the tokenizer.
Read the overview
Texts, tokens, sources
Step 02 shows your corpus:
- Texts: number of texts in the corpus.
- Tokens: total word tokens across the corpus.
- Sources: distinct publications or sources present.
The table below the metrics lists every document with its publication date, title, source, URL, and scraping status. UseExport corpus CSV to save the whole corpus.
Scraping statuses
ok: the page's main text was extracted.blocked: the site refused access (bot gate, HTTP 403/429) or returned a JavaScript shell.empty: the page loaded but contained no extractable text.error: the request failed (for example, a network error).
Run analysis
Three tools, all running in your browser
Word frequency
Choose the number of top words and selectRun. Punctuation is removed, Indonesian stopwords are filtered using the built-in stopword list, and the result is shown as a ranked table and bar chart. Date-like tokens such as6/9/2026 are preserved as single tokens.
N-gram analysis
Set n (2 to 8) and select Run to get the most frequent multi-word sequences.
Concordance (KWIC)
Enter a keyword and select Run to see every occurrence with its left and right context. Matching is case-insensitive and word-based: searching presidendoes not match presidential.
Export
Results as CSV
Every analysis tool offers an Export CSV button that downloads the current result. Exports include:
mostfrequentwords_by_semantext.csvn_gram_by_semantext.csvconcordance_by_semantext.csvcorpus_by_semantext.csv(full corpus, re-importable)
The corpus export uses the columnsDatetime, Title, Text, URL, TextID, Publication, so it can be merged again later with the CSV upload tab.
Privacy, ethics, and limits
Read before scraping at scale
- Analysis stays local. Frequency, n-gram, and concordance computation never leave your browser.
- Harvest politely. SemanText retrieves pages sequentially with a browser-like user agent. Respect the
robots.txtof each site, attribute every source, and be mindful of copyright and Indonesian press-law norms when reusing harvested text. Harvested corpora are research artifacts: keep the original URLs so sources stay verifiable. - Free-tier caps. The free deployment handles about 100,000 requests per day, with at most 25 text fetches per harvest round.