Submit Reddit post comment collection jobs through Dataify Builder by Reddit URL. After a successful submission, give the user the task_id, the returned or inferred status, and tell them to visit Dataify to view results.
Use DATAIFY_API_TOKEN as the long-term saved token name.
DATAIFY_API_TOKEN is already saved locally in the environment.DATAIFY_API_TOKEN is saved locally, use it without asking the user to re-enter the token.DATAIFY_API_TOKEN is saved, ask whether they want to save it locally as DATAIFY_API_TOKEN for future use.API TOKEN in user-facing instructions. Prefer the environment variable name DATAIFY_API_TOKEN for saved local use.PowerShell examples for saving the token for the current session:
$env:DATAIFY_API_TOKEN = "YOUR_DATAIFY_API_TOKEN"
For a persistent user-level variable on Windows:
[Environment]::SetEnvironmentVariable("DATAIFY_API_TOKEN", "YOUR_DATAIFY_API_TOKEN", "User")
url, days_back, and comment_limit.spider_parameters objects.DATAIFY_API_TOKEN.DATAIFY_API_TOKEN.spider_id=reddit_comment_by-url.data.task_id from the Builder response and read data.status or status when present.When the user invokes this skill, first tell them these values are used. Always display submitted parameters as a Markdown table; do not use a plain sentence or bullet list for the parameter confirmation.
| Field | Required | Default | Location | Notes |
|---|---|---|---|---|
| --- | --- | --- | --- | --- |
url | Yes | https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button | spider_parameters | Reddit URL. |
days_back | No | 10 | spider_parameters | Number of days back for collecting comments. Must be an integer greater than or equal to 0. |
comment_limit | No | 5 | spider_parameters | Reply comment limit. Must be an integer greater than or equal to 0. |
file_name | No | {{TasksID}} | Builder form field | Use the default when the user does not change it. |
Then ask: "Do you want to change any of these values before I submit the task?"
Also ask: "Do you want to collect multiple Reddit comment groups? If yes, provide multiple groups with url, days_back, and comment_limit."
If the user has already provided some values, show those values in place of the defaults and only ask whether the remaining/defaulted values should be changed.
url is required. If the user does not provide it, use the default https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button only after showing it in the parameter confirmation table.url.url cannot be empty.url must start with https://www.reddit.com/.days_back must be an integer greater than or equal to 0.comment_limit must be an integer greater than or equal to 0.url, days_back, and comment_limit inside spider_parameters.file_name defaults to {{TasksID}}. If the user changes it, submit the user-provided value.file_name cannot be empty.Single-group example:
spider_parameters=[{"url":"https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","days_back":"10","comment_limit":"5"}]
Multi-group example:
spider_parameters=[{"url":"https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","days_back":"10","comment_limit":"5"},{"url":"https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","days_back":"10","comment_limit":"5"}]
Use form fields rather than hand-built URL-encoded strings.
https://scraperapi.dataify.com/builder?platform=1POSTBearer DATAIFY_API_TOKENapplication/x-www-form-urlencodedspider_name=reddit.comspider_id=reddit_comment_by-urlspider_errors=truefile_name={{TasksID}}spider_parameters must be a JSON string array of Reddit comment objects.For stable execution, prefer scripts/submit_dataify_reddit_comment_by_url.py with Python 3.6 or newer instead of rewriting the Builder flow.
python3 ".\scripts\submit_dataify_reddit_comment_by_url.py" --url "https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button" --days-back "10" --comment-limit "5"
To override the saved environment token or file name:
python3 ".\scripts\submit_dataify_reddit_comment_by_url.py" --api-token "YOUR_DATAIFY_API_TOKEN" --url "https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button" --file-name "{{TasksID}}"
To submit multiple Reddit comment groups:
python3 ".\scripts\submit_dataify_reddit_comment_by_url.py" --params-json '[{"url":"https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","days_back":"10","comment_limit":"5"},{"url":"https://www.reddit.com/r/datascience/comments/1cmnf0m/comment/l32204i/?utm_source=share&utm_medium=web3x&utm_name=web3xcss&utm_term=1&utm_content=share_button","days_back":"10","comment_limit":"5"}]'
The script prints a JSON summary with spider_id, task_id, status, parameters, file_name, dashboard_url, and message.
Missing Dataify API TOKEN means no explicit token was passed and DATAIFY_API_TOKEN is not saved locally. Tell the user they need to provide their Dataify API TOKEN, ask whether they want to save it as DATAIFY_API_TOKEN, or tell them they can register or log in at Dataify to get one. If they already have a token, tell them it is in the top-right area of Dataify.
url cannot be empty means the Reddit URL is missing.
url must start with https://www.reddit.com/ means the URL is outside the allowed Reddit domain.
days_back must be an integer greater than or equal to 0 means the day limit is invalid.
comment_limit must be an integer greater than or equal to 0 means the reply comment limit is invalid.
File name cannot be empty means no usable file_name was provided.
Necessary parameters is empty! usually means the Builder request was not submitted as form fields, spider_parameters was not a JSON string array, or one spider_parameters object is missing required fields.
Missing task_id usually means the authorization header, token, spider_name, spider_id, or spider_parameters is wrong.
file_name inside spider_parameters.https://www.reddit.com/.API TOKEN and DATAIFY_API_TOKEN when referring to authentication.共 2 个版本