采集卡片
Instagram Profiles 采集器
任何公开账号背后的完整资料头:简介、粉丝数和帖子数、认证状态、商业类目和简介里的那条链接——以及,你要的话,那条链接指向的网站上的邮箱地址。
它采什么
任何公开账号背后的完整资料头:简介、粉丝数和帖子数、认证状态、商业类目和简介里的那条链接——以及,你要的话,那条链接指向的网站上的邮箱地址。 它是一张采集器卡片,也就是说全部约定只有一条:填好表单,回来一张表。不会打开浏览器窗口,不占用你套餐里的任何自动化名额,请求走的是普通 HTTP,带着真实浏览器的 TLS 指纹。
对于未登录的请求,Instagram 已经不再返回主页简介、粉丝数和简介链接,只给一个空壳。这张卡片需要一个自己的账号才能读到它们。Argus 里其余的一切仍然在未登录状态下采集。
量一大,这个目标就会在意请求是从哪里发出的,所以运行时请选一个代理——这是表单上的建议而不是门槛,不选也照样能跑。无论走的是哪条路,每一行都会记下来——见下面的溯源列。
你要提供什么——2 项
应用画出的那张表单,直接读自这张卡片本身。下面每一条提示,都是运行对话框里显示在该字段旁边的那一条,所以这里没有任何脱离产品另写一遍的说明。
它唯一需要的那个答案
- usernames
- Accounts · list · 必填
One account at a time, in whatever form you have it — nasa, @nasa, the profile URL, the share-sheet link, a story link, or the numeric id. The @, the query string and the /reels/ on the end are all stripped for you. A link to a POST or a hashtag is not an account and will be refused rather than guessed at.
其余的都可填可不填
- scrapeContacts
- Find email addresses · boolean
Opens the website in each bio looking for an address, a named contact and social links. Accounts with no link in the bio are skipped. This is the slow half — about two minutes per hundred.
会拿回什么——34 列
每次运行生成一个数据集——一张带类型的表,归你的工作区所有:可以排序、筛选、在网格里直接编辑、整张导出,也可以通过本地 API 读回来。下面就是它创建时带的列。
有 5 列标着可能为空。那是关于记录本身的事实,而不是关于采集器的——一条没有标地点的帖子、一个没有商业类目的账号——把它说出来,是为了让空单元格不被读成采集器坏了。至于返回里根本不带的列,在上游就被删掉了,不会空着交付,所以这里没有一列是装饰。
来自 Instagram Profiles 的 18 列
| 键名 | 列 | 类型 |
|---|---|---|
| username | Username | text |
| fullName | Name | text |
| biography | Bio | longText |
| followersCount | Followers | number |
| followsCount | Following | number |
| postsCount | Posts | number |
| verified | Verified | select |
| private | Private | select |
| isBusinessAccount | Business account | select |
| businessCategoryName | Business category可能为空 | text |
| website | Website可能为空 | url |
| publicEmail | Public email可能为空 | |
| publicPhone | Public phone可能为空 | text |
| url | Profile | url |
| igtvVideoCount | Videos可能为空 | number |
| profilePicUrl | Profile picture | url |
| ownerId | Account ID | text |
| searchTerm | Found via | text |
来自补全环节的 12 列
打开这个选项,运行时每行会多发一次请求:它会访问 website 列里的那个网站,找地址、找具体联系人、找社交链接。这一步把一条名录记录变成一条线索,也是你要它做的时候整次运行大部分时间的去处。
| 键名 | 列 | 类型 |
|---|---|---|
| contact_email | Direct email | |
| contact_name | Contact | text |
| contact_role | Role | text |
| emails | All emails | longText |
| contact_source_url | Found on | url |
| url | ||
| url | ||
| url | ||
| X / Twitter | url | |
| youtube | YouTube | url |
| tiktok | TikTok | url |
每个采集器都会写的 4 列
每张卡片上都是同样这四列,好让一张表在几个月后仍能回答它的行是怎么来的:来自哪个服务、什么时候、请求带的是哪个环境的身份,以及那个身份当时是否已登录。
| 键名 | 列 | 类型 |
|---|---|---|
| platform | Platform | text |
| collected_at | Collected at | datetime |
| profile | Collected by | profile |
| logged_in | Signed in | select |
跑它的四种方式
「采集器」标签页。 挑中这张卡片,填好表单,按「开始」。从这里发起的每一次运行都会生成一张新表,以你搜索的内容和时间命名。想先试试也可以——它只采一页,什么都不写,并告诉你哪些列拿回了内容。
问助手。 它手里有整个目录,所以这张卡片是一句话,而不是一张表单。它会按你说的话把上面那些参数填好,并在开跑之前拿给你看。
通过 MCP 或本地 API。 同一张卡片,从编程 Agent 里调用——MCP 服务器上的 argus_run_scraper,或者本地 API 的 POST http://127.0.0.1:39219/v1/scrapers/run。旁边有一个什么都不写入的示例调用。
{
"kind": "instagram_profiles",
"inputs": {
"usernames": [
"…"
]
}
}作为工作流里的一个步骤。 Run scraper 步骤把这个采集器放进一条自动化流程的中间——先采、再筛、再发信——整棵流程照样一个窗口都不开。它也是唯一能推翻「一次运行一张表」规则的调用方:指定一张你命名的表,它会在表不存在时按上面的列建好,之后每次运行都写进这张表,追加或者按你指定的匹配列就地更新。这个步骤会把表名、表 id 和行数交给下一步。
它到哪里为止
它不会去驱动页面。凡是需要真实浏览器的事——背后没有列表接口的网站,或者任何操作你自己账号的事——都该交给自动化流程。那是另一件工具,而不是这件工具的劣化版。
即便登录了,采集过程也不会打开任何浏览器窗口。窗口只手动打开一次,让你登录;此后的每一个请求,都和其他卡片一样是普通 HTTP。请用一个随时可弃的小号——自动化采集违反这些网站的条款,承载它的账号可能被封停。
Instagram 的其余卡片
一张卡片对应一件事,而不是对应一个服务——主页、帖子和它们周围的人,是三种集合、三套字段。