apidojo-io/apidojo-skills

scraping-google-search-results

Scrapes Google search results for any query using apidojo's Google Search scraper on Apify.

Quelltext ansehen
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

Scraping Google Search Results

Raw SERP dataset for any search query. Returns organic results, featured snippets, People Also Ask boxes, and other SERP features.

Prerequisites

  • APIFY_TOKEN environment variable set
  • Optional: Apify MCP server installed

Inputs

ParameterTypeRequiredDefaultNotes
startUrlsarrayOptional[]Google search URLs
searchTermsarrayOptional[]Keywords to search on Google
countryCodestringOptionalUSCountry for Google search (e.g. US, GB, TR)
languageCodestringOptional—Language for results (e.g. en)
maxItemsnumberOptionalUnlimitedMaximum results to return across all queries
maxPagesPerQueryintegerOptional1Maximum result pages per query
mobileResultsbooleanOptionalfalseFetch mobile SERP layout
customMapFunctionstringOptional—JavaScript function to transform each output object

Workflow

Progress:
- [ ] Step 1: Normalize query list
- [ ] Step 2: Run google-search-scraper
- [ ] Step 3: Poll for SUCCEEDED
- [ ] Step 4: Deliver SERP dataset

Step 2: Run the Actor

Recommended — run_actor.js (handles waiting, output, and file saving automatically):

bash
# Quick answer (prints table to chat)
node scripts/run_actor.js \
  --actor "apidojo~google-search-scraper" \
  --input '{"param": "value"}'

# Save as CSV
node scripts/run_actor.js \
  --actor "apidojo~google-search-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.csv --format csv

# Save as JSON
node scripts/run_actor.js \
  --actor "apidojo~google-search-scraper" \
  --input '{"param": "value"}' \
  --output YYYY-MM-DD_results.json --format json
APIFY_TOKEN must be set in environment or .env file.

If Apify MCP is available:

Tool: apify:run-actor
Actor: "apidojo~google-search-scraper"
Input:
{
  "queries": ["query1", "query2"],
  "maxPagesPerQuery": 1,
  "countryCode": "us",
  "languageCode": "en"
}

REST API fallback:

bash
curl -X POST \
  "https://api.apify.com/v2/acts/apidojo~google-search-scraper/runs?token=$APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"queries": ["query1", "query2"], "maxPagesPerQuery": 1}'

Save id as RUN_ID. Poll until status = SUCCEEDED:

bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID?token=$APIFY_TOKEN" | grep '"status"'

Fetch results:

bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN&format=json"

Step 3: Handle Edge Cases

  • 0 organic results: Query may trigger only ads or knowledge panels — note to user.
  • SERP features present (PAA, snippets): These are returned as separate result types — include them in output with type field.
  • Different results per country: Specify countryCode explicitly when geo-specific results are needed.

Output Format

# Google SERP Dataset: "<query>"
Query: <query> | Country: <cc> | Pages: N | Results: N

| Position | URL | Title | Snippet (truncated) | Type |
|----------|-----|-------|---------------------|------|
| 1        | ... | ...   | ...                 | organic |
| —        | ... | ...   | ...                 | featured_snippet |
| —        | ... | ...   | ...                 | paa |

Available fields: query, position, url, title, description, type (organic/
featured_snippet/paa/local_pack/image/video), sitelinks, rating, reviewsCount

Troubleshooting

Google CAPTCHA / blocks: Actor handles this automatically; if persistent, reduce query batch size. Inconsistent positions: SERP positions vary by location and personalization — use countryCode for consistency.

aus demselben Repository

Weitere Skills

Alle Skills
apidojo-io
Community

scraping-tiktok-posts-by-location

Extracts TikTok posts tagged at a specific location using apidojo's TikTok Location Scraper on Apify. Triggers when the user asks to: get TikTok videos from a specific location, scrape TikTok posts tagged at a place, find TikTok content from a city or venue, collect TikTok videos geotagged at a location URL, export TikTok location-tagged content, or pull TikTok posts from a place page. Returns video title, views, likes, comments, shares, channel info, hashtags, and timestamp per post. Ideal for

Installationen
2
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

monitoring-google-news-coverage-for-brand

Monitors Google News coverage for a brand using apidojo's Google Search scraper on Apify. Triggers when the user asks to: track news coverage about a brand on Google, monitor press mentions in Google News, find recent news articles mentioning a company, track media coverage for a brand or executive, monitor competitor news coverage, find press releases or news stories about a brand on Google, or research how a company is being covered in the press. Returns article title, publication, date, URL,

Installationen
1
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

scraping-tweets-by-keyword

Scrapes tweets matching any keyword, hashtag, phrase, or boolean query using apidojo's Twitter Search scraper on Apify. Triggers when the user asks to: scrape tweets about a topic, fetch tweets containing a keyword or hashtag, export Twitter search results to a dataset, get all tweets mentioning a phrase, pull recent tweets for a search term, or collect tweet data for analysis or research. Returns tweet text, author, likes, retweets, replies, timestamp, and tweet URL per result. Ideal for resear

Installationen
1
GitHub Stars
1
Aktualisiert
13. Mai
apidojo-io
Community

scraping-tweets-from-account

Scrapes all tweets, replies, and media from any Twitter/X account using apidojo's Tweet scraper on Apify. Triggers when the user asks to: get all tweets from a Twitter account, export a user's tweet history, scrape a specific Twitter profile's posts, fetch the latest tweets from an account, download tweet data from a user timeline, or collect all posts from a Twitter username. Returns tweet text, likes, retweets, replies, media URLs, and timestamp per tweet. Ideal for journalists, researchers, c

Installationen
1
GitHub Stars
1
Aktualisiert
13. Mai