Medium Articles and Tags Scraper avatar

Medium Articles and Tags Scraper

Pricing

$0.50 / 1,000 results

Go to Apify Store
Medium Articles and Tags Scraper

Medium Articles and Tags Scraper

Collect public Medium feed entries by author, tag, or publication. Export article titles, canonical links, authors, dates, categories, and short feed snippets. No Medium login is required.

Pricing

$0.50 / 1,000 results

Rating

0.0

(0)

Developer

MYM

MYM

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

12 days ago

Last modified

Share

Medium Articles and Tags Scraper (No API Key, No Login)

Apify Actor No API key No login Public data only Pay per result Export formats

Medium Articles and Tags Scraper collects public medium content and places each result in an Apify dataset row. Use it for source discovery, editorial research, public content monitoring, and repeatable exports. You do not need to provide a platform login or API key. Every row keeps its source URL so you can review the underlying page.

Start with one small input. You pay per result row returned, not for an empty request.

Table of contents

What it does

Medium Articles and Tags Scraper reads public author, tag, and publication feeds. It returns the fields those feeds provide: article title, link, creator, date, categories, and a short excerpt. It is useful for feed monitoring and content research, not for copying paywalled article bodies.

  • Finds public records from the inputs supported by the form.
  • Returns structured rows instead of a page of unlabelled text.
  • Keeps the source query or publication alongside each row where that field applies.
  • Provides canonical links for review and downstream enrichment.
  • Stops at the requested cap; it does not promise that every source contains that many records.
  • Leaves fields null or empty when the public source does not provide them.

This Actor is for public information. It does not sign in, access private profiles, bypass a paywall, or claim to reproduce hidden analytics. Data availability depends on the public source at run time.

Who uses it

  • Researchers who need a small, repeatable sample from a public content source.
  • Editorial and trend teams comparing public topics and publication feeds.
  • Product teams building a dataset for manual review or a separate analysis step.
  • Developers who want JSON rows instead of writing a one-off feed request.
  • Analysts who schedule periodic snapshots and compare the source links over time.

Output fields

The dataset view is designed for quick inspection. Full JSON retains the same row fields.

FieldTypeDescription
titlestringArticle title from the public feed. Always populated for accepted rows.
linkURLArticle URL from the public feed. Always populated.
sourcestringThe author handle, tag, or publication input used for this feed.
sourceTypestringWhether the row came from a user, tag, or publication feed.
authorstringFeed author or creator name, when published.
pubDatedate stringPublication date as supplied by the RSS feed.
guidstringFeed item identifier, when supplied.
categoriesarrayPublic feed categories attached to the article; may be empty.
snippetstringA plain-text excerpt from the public feed, capped at 500 characters.

Always-populated fields identify the returned item and its public source. Fields described as “when present” follow the source response; the Actor does not infer missing engagement numbers, authors, categories, or text. Empty categories and null counts are valid source outcomes.

How to run it

  1. Open the Input tab and choose one or more public targets.
  2. Keep the default maximum for a first test or lower it for a short sample.
  3. Click Start and wait for the run to finish.
  4. Open the default dataset. Use the articles view for a readable table or download the full JSON.
  5. Check a few canonical URLs before using the rows in another system.

The prefilled input is a working example. Replace it with your target values; do not paste account passwords, cookies, or private data into the input.

Input example

{
"usernames": [
"timdenning"
],
"tags": [
"technology"
],
"publications": [],
"maxPerSource": 2
}

Each list entry is a separate source. maxItems or maxPerSource / maxPerPub is a maximum, not a promise of that many rows. The Actor preserves the source label on each returned item so multi-source runs remain auditable.

Input recipes

GoalInput patternWhat to expect
Read a writer feedusernames=["timdenning"], maxPerSource=20Returns recent public feed items attributed to that Medium username.
Follow a topictags=["technology"], maxPerSource=20Collects public feed entries for a Medium tag.
Track a publicationpublications=["towardsdatascience"], maxPerSource=20Reads the public publication feed when that feed is available.
Compare author and topicusernames=["timdenning"], tags=["technology"], maxPerSource=10Rows retain source and sourceType so each feed is identifiable.
Make a small sampletags=["productivity"], maxPerSource=5The per-source cap makes a short, low-cost test run.

For repeat use, save a task with the input you have validated. Keep the cap close to the size of the dataset you actually need; a larger cap does not make a source return more data than it exposes.

Output example

The example below is a real row from a live source run. Optional values can differ on later runs.

{
"title": "As a 6-Figure Newsletter Writer, I Can Help You Get More Subscribers Using 5 Rules",
"link": "https://medium.com/illumination/as-a-6-figure-newsletter-writer-i-can-help-you-get-more-subscribers-using-5-rules-7c88058b69af?source=rss-b6d641be1066------2",
"author": "Tim Denning",
"pubDate": "Mon, 09 Dec 2024 03:35:14 GMT",
"guid": "https://medium.com/p/7c88058b69af",
"categories": [
"marketing",
"entrepreneurship",
"writing",
"books",
"newsletter"
],
"snippet": "The first rule can change your writing forever Continue reading on ILLUMINATION »",
"source": "@timdenning",
"sourceType": "user"
}

A result row is not a license to republish the source material. Follow the linked source’s terms and any applicable rights or privacy rules.

Pricing

This Actor uses pay-per-event pricing. The event is one result row in the default dataset. There is no separate Actor-start event.

ItemPrice
One returned result row$0.0005
1,000 returned result rows$0.50
Empty or rejected request$0 in result events

The run’s input cap and Apify’s run charge limit help you control spend. On the free Apify plan, this Actor allows up to 40 requested result rows per Apify user per UTC day. The requested amount counts even when the source returns fewer rows, and the allowance resets at 00:00 UTC. Paid Apify plans are not limited by this free-plan rule. Result charges are based on rows delivered, not on a guessed count.

Limits and data quality

  • Only data available publicly at run time is returned.
  • Search ranking, feed windows, publication settings, and fields can change without notice.
  • Optional fields may be null. This is preferable to manufacturing a value that the source did not provide.
  • A run cap limits output work; it cannot force a source to produce more results.
  • Invalid or empty inputs finish SUCCEEDED with zero rows and zero result charges; OUTPUT explains the INPUT_ERROR reason. Genuine upstream/access failures remain FAILED.
  • A transient source error can prevent a run from completing. Retry later with the same public input; do not add credentials to get around an explicit access wall.
  • A free-plan daily allowance counts requested results. Repeating the same request does not refund previously reserved quota.

Automation and API

Start an asynchronous run

$curl -X POST "https://api.apify.com/v2/acts/ACTOR_ID/runs?token=$APIFY_TOKEN&maxTotalChargeUsd=0.05" -H "Content-Type: application/json" -d '{ "usernames": [ "timdenning" ], "tags": [ "technology" ], "publications": [], "maxPerSource": 2}'

Wait for a run

$curl -X POST "https://api.apify.com/v2/acts/ACTOR_ID/runs?waitForFinish=300&token=$APIFY_TOKEN" -H "Content-Type: application/json" -d '{ "usernames": [ "timdenning" ], "tags": [ "technology" ], "publications": [], "maxPerSource": 2}'

Download the dataset

$curl "https://api.apify.com/v2/datasets/DATASET_ID/items?clean=true&format=json&token=$APIFY_TOKEN"

Use your own Apify API token in your shell or secret manager. Do not paste it into Actor input, public issues, or shared logs. The API examples use placeholders; ACTOR_ID, DATASET_ID, and APIFY_TOKEN must be replaced with values from your Apify account.

MCP and integrations

You can run the Actor from Apify Console, the Apify API, an Apify schedule, or a workflow tool that can call Apify Actors. If your AI client is connected to Apify MCP, invoke this Actor by its Apify actor ID and pass the same JSON input shown above. Treat the returned URLs as source links and review them before sending data to another service.

For an automation, store the Apify token in the platform’s secret store. Keep the input small while testing, then increase the cap only after checking actual row counts and run costs. A saved task is useful when the source list and cap stay the same between runs.

FAQ

What does one billable result mean?

One Medium feed item pushed to the dataset. Charges follow rows delivered, not requests that return no article.

Does the Actor need my Medium account?

No. It reads public RSS feeds and does not ask for a password, cookie, or member access.

Does it return the full article body?

No. This Actor returns feed metadata and a short plain-text snippet, not a full article copy.

How long is the snippet?

The snippet is capped at 500 characters after HTML tags are removed.

Can I search article text by keyword?

This version uses author, tag, and publication feeds. It does not perform a full-text search across all Medium articles.

What should I put in usernames?

Use the public Medium handle without the @ sign. The form also accepts a leading @ and removes it.

What should I put in tags?

Use the tag slug shown in a Medium tag URL, such as technology or data-science.

How do publications work?

Enter the publication slug. The Actor tries the public subdomain feed and its public Medium feed path.

Why are claps not in the dataset?

The public RSS feed does not consistently expose clap counts. Missing engagement values are not guessed.

Why did a publication return no rows?

Some publications have disabled or changed feeds. The output count is limited by what the public feed exposes at run time.

How many rows can I request?

maxPerSource is capped at 100 per source. Free Apify accounts also share the configured daily result allowance; paid plans are unlimited.

Does the cap apply once or per source?

It applies separately to each submitted username, tag, or publication, then the free-plan daily allowance can reduce the number of sources served.

Are member-only stories included?

The Actor does not sign in or bypass a paywall. It returns only metadata visible in the public feed.

Can I schedule a recurring feed check?

Yes. Save a task or schedule with a small per-source cap and choose a cadence that matches your monitoring need.

Can I export to CSV or Excel?

Yes. Apify datasets can be downloaded in supported formats, including JSON, CSV, and Excel.

Will old stories always stay in the feed?

No. Feed windows and publication settings vary. The Actor returns entries available at the time of the run.

What happens if every target field is empty?

Invalid or empty input finishes SUCCEEDED with zero rows and zero result charges; OUTPUT explains why. Real upstream failures remain FAILED.

Can I use the rows in a research pipeline?

Yes. Use the API, dataset integrations, or an Apify MCP client and keep the canonical article link with each row.

Why do categories vary between rows?

Authors and publications control their own feed metadata. The categories field can be empty or contain several labels.

Where do I report a feed that stopped working?

Open the Apify Issues tab and include the run ID, source type, target slug, and a public feed URL.

medium scraper · medium article scraper · medium com scraper · medium author posts scraper · medium publication scraper · medium tag scraper · medium rss scraper · medium article metadata scraper · medium writer feed export · medium technology articles · medium artificial intelligence articles · medium productivity articles · medium startup articles · medium data science articles · medium UX design articles · medium business articles · medium writing articles · medium marketing articles · public medium feed collector · medium article links dataset · medium rss to json · medium author feed api · medium tag feed export · medium publication feed reader · medium recent stories scraper · medium article titles csv · medium canonical link exporter · medium content research dataset · medium feed monitoring · medium json dataset

Disclaimer

This is an independent data utility and is not affiliated with or endorsed by Medium. It accesses public information only. You are responsible for following the source platform’s terms, respecting creator rights, and complying with privacy and data-protection laws such as GDPR and CCPA. Do not use the output to identify, profile, or contact people in ways that violate law or the source’s rules.

Resources


中文说明

Medium Articles and Tags Scraper:公开内容采集器

本工具通过公开页面或订阅源读取 Medium 内容,并将每条结果保存为 Apify 数据集中的独立记录。可用于内容研究、公开信息监控、编辑选题和定期导出。输入中不需要账号密码、Cookie 或平台 API 密钥。每条记录都会保留公开来源链接,方便人工核对。

建议先用一个小输入运行。只按实际写入数据集的结果行计费;空结果不会产生结果事件费用。

目录

功能

Medium 文章与标签采集器读取公开作者、标签和出版物 Feed,并返回 Feed 中提供的文章标题、链接、作者、日期、类别及短摘要。它适合订阅源监控和内容研究,不会复制付费文章正文。

  • 按输入表单支持的公开目标查询数据。
  • 将结果整理成字段明确的 JSON 数据行,便于筛选和导出。
  • 在适用时保留搜索词、作者、标签或出版物等来源信息。
  • 为每条结果提供公开页面链接,便于复核。
  • 按输入上限控制返回行数;上限不是结果数量保证。
  • 来源没有公开某个字段时保留空值,不猜测互动数或作者信息。

本工具只处理公开数据,不登录账号、不访问私人资料、不绕过付费墙,也不声称可以取得隐藏的分析数据。结果取决于来源在运行时公开提供的内容。

适用人群

  • 需要从公开内容源获取少量结构化样本的研究人员。
  • 对比公开主题、文章或出版物 Feed 的编辑与内容团队。
  • 将公开数据送入人工审阅或后续分析流程的产品团队。
  • 希望直接获取 JSON 行,而不想维护一次性抓取代码的开发者。
  • 需要按固定周期保存快照并比较公开链接的分析人员。

输出字段

字段类型说明
title字符串公开 Feed 中的文章标题。有效结果始终提供。
link链接文章公开链接。始终提供。
source字符串提交的作者、标签或出版物来源。
sourceType字符串来源类型:作者、标签或出版物。
author字符串Feed 提供的作者或创建者名称(如有)。
pubDate日期字符串Feed 提供的发布日期字符串。
guid字符串Feed 项目标识(如有)。
categories数组公开 Feed 中的分类,可为空或包含多个标签。
snippet字符串公开 Feed 的纯文本摘要,最多 500 个字符。

标记为始终提供的字段用于识别结果和公开来源。标记为“来源提供时出现”的字段取决于原始公开响应;工具不会补造缺失的作者、类别、互动数或正文。空类别和空互动数属于有效结果。

运行步骤

  1. 打开 Input 页面,填写一个或多个公开目标。
  2. 首次运行可保留预填输入,或将上限调小以便快速检查。
  3. 点击 Start 并等待运行结束。
  4. 打开默认数据集,使用 articles 视图查看表格,或下载完整 JSON。
  5. 在把数据送入其他系统之前,抽查几条规范链接。

表单中的预填值是可运行示例。请替换成自己的公开目标,不要在输入中粘贴密码、Cookie 或私人数据。

输入示例

{
"usernames": [
"timdenning"
],
"tags": [
"technology"
],
"publications": [],
"maxPerSource": 2
}

每个列表元素代表一个来源。maxItems、maxPerSource 或 maxPerPub 是上限,不保证来源一定有这么多结果。多来源运行会在记录中保留来源标识,便于复核。

输入场景

| 读取作者 Feed | usernames=["timdenning"], maxPerSource=20 | 返回该公开 Medium 用户 Feed 中的文章。 | | 关注一个主题 | tags=["technology"], maxPerSource=20 | 读取 Medium 公开标签 Feed 中的文章。 | | 跟踪出版物 | publications=["towardsdatascience"], maxPerSource=20 | 出版物公开 Feed 可用时读取其内容。 | | 对比作者与主题 | usernames=["timdenning"], tags=["technology"], maxPerSource=10 | 每行保留 source 和 sourceType,便于分辨来源。 | | 快速抽样 | tags=["productivity"], maxPerSource=5 | 较小的每来源上限适合快速检查结果。 |

如果会重复运行同一组来源,可以保存为 Task。只设置实际需要的结果上限;提高上限不会让来源返回它本来没有公开的数据。

结果示例

以下是一次真实公开来源运行中的结果行。后续运行的可选字段可能不同。

{
"title": "As a 6-Figure Newsletter Writer, I Can Help You Get More Subscribers Using 5 Rules",
"link": "https://medium.com/illumination/as-a-6-figure-newsletter-writer-i-can-help-you-get-more-subscribers-using-5-rules-7c88058b69af?source=rss-b6d641be1066------2",
"author": "Tim Denning",
"pubDate": "Mon, 09 Dec 2024 03:35:14 GMT",
"guid": "https://medium.com/p/7c88058b69af",
"categories": [
"marketing",
"entrepreneurship",
"writing",
"books",
"newsletter"
],
"snippet": "The first rule can change your writing forever Continue reading on ILLUMINATION »",
"source": "@timdenning",
"sourceType": "user"
}

结果行不代表你获得了重新发布原始内容的权利。请遵守来源条款、创作者权利和隐私要求。

价格与额度

本 Actor 使用按事件计费,事件是写入默认数据集的一条结果行,不收单独的启动事件费。

项目价格
每条返回结果$0.0005
每 1,000 条结果$0.50
空结果或被拒绝的输入结果事件费用为 $0

输入上限和 Apify 运行费用上限可用于控制开销。Apify 免费计划每个用户对每个 Actor 每个 UTC 日最多请求 40 条结果;即使来源返回较少,请求数量仍按所请求的结果数计入额度,额度在 UTC 00:00 重置。付费 Apify 计划不受该免费额度限制。结果费用按实际写入的数据行计算。

数据范围与质量

  • 只返回运行时公开可见的数据。
  • 排序、Feed 保留范围、出版物设置和可用字段可能变化。
  • 可选字段可能为空;这比伪造来源没有提供的数值更可靠。
  • 输入上限限制处理量,但不能要求来源生成更多结果。
  • 无效或空输入以 SUCCEEDED 状态结束,结果行和结果费用均为零;OUTPUT 说明 INPUT_ERROR 原因。真实上游或访问错误仍为 FAILED。
  • 来源临时错误可能导致运行失败。可以稍后用相同公开输入重试,不要用凭证绕过明确的访问限制。
  • 免费计划额度按请求数量计算;重复请求不会返还已经预留的额度。

API 与自动化

异步启动运行

curl -X POST \
"https://api.apify.com/v2/acts/ACTOR_ID/runs?token=$APIFY_TOKEN&maxTotalChargeUsd=0.05" \
-H "Content-Type: application/json" \
-d '{ "usernames": [ "timdenning" ], "tags": [ "technology" ], "publications": [], "maxPerSource": 2}'

等待运行结束

curl -X POST \
"https://api.apify.com/v2/acts/ACTOR_ID/runs?waitForFinish=300&token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{ "usernames": [ "timdenning" ], "tags": [ "technology" ], "publications": [], "maxPerSource": 2}'

下载数据集

$curl "https://api.apify.com/v2/datasets/DATASET_ID/items?clean=true&format=json&token=$APIFY_TOKEN"

请把 Apify API Token 保存在终端环境变量或密钥管理器中,不要放进 Actor 输入、公开 issue 或共享日志。以上命令中的 ACTOR_ID、DATASET_ID 和 APIFY_TOKEN 都是需要替换的占位符。

MCP 与集成

可以从 Apify Console、Apify API、Apify Schedule,或支持调用 Actor 的工作流工具运行本工具。如果 AI 客户端已连接 Apify MCP,可按 Actor ID 调用,并传入上面的相同 JSON 输入。将返回链接视为来源链接,在转交给其他服务前先核对。

自动化时,请把 Apify Token 放在平台的密钥存储中。先用小输入检查字段和行数,再逐步提高上限。若来源与上限固定,保存为 Task 可避免每次重复填写。

常见问题

一条可计费结果是什么意思?

一条写入数据集的 Medium Feed 文章。没有文章的请求不会产生结果事件费用。

需要 Medium 账号吗?

不需要。工具读取公开 RSS Feed,不要求密码、Cookie 或会员登录。

会返回完整文章正文吗?

不会。输出包含 Feed 元数据和短摘要,不复制完整文章内容。

摘要最长多少?

去除 HTML 标签后,snippet 最多保留 500 个字符。

可以全文搜索 Medium 吗?

当前版本读取作者、标签和出版物 Feed,不会对所有 Medium 文章做全文搜索。

usernames 应该填写什么?

填写公开 Medium 用户名,不含 @。如果输入带有 @,工具会移除前缀。

tags 应该填写什么?

使用 Medium 标签 URL 中的公开 slug,例如 technology 或 data-science。

publications 如何填写?

填写出版物 slug。工具会尝试其公开子域名 Feed 和 Medium 公共 Feed 路径。

为什么没有 clap 数?

公开 RSS Feed 并不稳定提供 clap 数;缺失的互动数据不会被猜测。

为什么出版物没有返回行?

出版物可能停用或更改 Feed。数量取决于运行时公开 Feed 的内容。

每个来源最多请求多少行?

maxPerSource 上限为 100。免费 Apify 账号还受每日请求结果额度限制;付费计划不受该免费额度限制。

上限是整次运行还是每个来源?

上限分别应用于每个用户名、标签或出版物;免费计划每日额度可能进一步减少处理来源数。

会包含会员文章吗?

工具不会登录或绕过付费墙,只返回公开 Feed 暴露的元数据。

可以安排定期检查 Feed 吗?

可以。可保存 Task 或 Schedule,并选择合适周期和每来源上限。

可以导出 CSV 或 Excel 吗?

可以。Apify 数据集支持 JSON、CSV、Excel 等格式。

旧文章会一直留在 Feed 中吗?

不保证。Feed 窗口和出版物设置各不相同,工具只返回运行时可见条目。

所有目标都为空会怎样?

无效或空输入以 SUCCEEDED 状态结束,不产生结果行或结果费用;OUTPUT 说明原因。真实上游错误仍为 FAILED。

可以用于研究流程吗?

可以。通过 API、数据集集成或 Apify MCP 获取结果,并保留规范文章链接。

为什么类别字段不同?

作者和出版物自行维护 Feed 元数据;categories 可能为空或含多个标签。

如何报告 Feed 故障?

请在 Apify Issues 页提供 run ID、来源类型、目标 slug 和公开 Feed URL。

相关搜索

Medium 文章采集器 · Medium 作者文章 RSS · Medium 标签文章采集 · Medium 出版物文章采集 · Medium 公开 RSS 读取 · Medium 文章标题导出 · Medium 文章链接采集 · Medium 作者动态监控 · Medium 科技文章采集 · Medium 人工智能文章 · Medium 效率文章搜索 · Medium 创业文章数据 · Medium 数据科学文章 · Medium UX 设计文章 · Medium 商业文章 RSS · Medium 写作主题文章 · Medium 市场营销文章 · Medium 文章元数据 JSON · Medium RSS 转 CSV · Medium 文章摘要导出 · Medium 公开 Feed API · Medium 近期文章链接 · Medium 出版物 RSS 读取 · Medium 标签 Feed 导出 · Medium 内容研究数据 · Medium 作者 Feed 采集 · Medium 文章类别导出 · Medium 公开文章索引 · Medium 订阅源监控 · Medium 数据集导出

免责声明

这是独立的数据工具,与 Medium 无关联,也未获得其背书。工具只读取公开信息。你需要自行遵守来源平台条款、创作者权利以及 GDPR、CCPA 等适用的隐私和数据保护法律。不得将输出用于违反法律或来源规则的识别、画像或联系行为。

资源

Errors & billing

Input errors finish with status SUCCEEDED, no results and no charge; see the OUTPUT record for the reason.

错误与计费

输入错误会以 SUCCEEDED 状态结束,不产生结果且不收费;原因请查看 OUTPUT 记录。