Google Phone Scraper - Bulk Export to CSV, JSON, API avatar

Google Phone Scraper - Bulk Export to CSV, JSON, API

Pricing

from $3.50 / 1,000 listings

Go to Apify Store
Google Phone Scraper - Bulk Export to CSV, JSON, API

Google Phone Scraper - Bulk Export to CSV, JSON, API

Pull gets, product, amazon, unofficial, information in bulk. Every row carries without, using, including, reviews, prices, descriptions, asin, category, search. Ready for CSV, Excel, JSON or the API.

Pricing

from $3.50 / 1,000 listings

Rating

0.0

(0)

Developer

Tarek Etman

Tarek Etman

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

Google Phone Scraper

Google Phone Scraper extracts structured records in bulk and exports them for analysis, enrichment and downstream pipelines. It covers amazon, product, category, search, pages, crawls, listing, detail, collect, metadata, titles, identifiers, such, asin, pricing, list-price, information, currency, availability, stock.

Built for teams that need text, ratings, review, counts, rating, breakdowns, seller, shipping without maintaining scrapers, proxies or browser infrastructure themselves.

Quick start (SDK examples)

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("google-phone-scraper").call(run_input={"targets": ["<target>"], "maxResults": 100})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)

JavaScript

import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "YOUR_APIFY_TOKEN" });
const run = await client.actor("google-phone-scraper").call({ targets: ["<target>"], maxResults: 100 });
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

cURL

curl -X POST "https://api.apify.com/v2/acts/google-phone-scraper/runs?token=YOUR_APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"targets":["<target>"],"maxResults":100}'

Fields returned

fielddescriptiontype
namename returned for every recordstring
urlurl returned for every recordstring
phonephone returned for every recordstring
addressaddress returned for every recordstring
websitewebsite returned for every recordstring
categorycategory returned for every recordstring
ratingrating returned for every recordstring
place_idplace id returned for every recordstring
price_levelprice level returned for every recordstring
inputinput returned for every recordstring
isValidisValid returned for every recordstring
isPossibleisPossible returned for every recordstring
typetype returned for every recordstring
scrapedAtscrapedAt returned for every recordstring

What it does

  • Extract amazon, product, category, search, pages, crawls into structured rows.
  • Enrich each record with listing, detail, collect, metadata, titles, identifiers.
  • Bulk export covering such, asin, pricing, list-price, information, currency.
  • Pipeline integration for availability, stock, text, ratings, review, counts.
  • Downstream analysis across rating, breakdowns, seller, shipping, delivery, estimates.
  • Recurring monitoring of return, policy, features, descriptions, breadcrumb, paths.
  • Deduplicated output keyed on the record identifier.
  • Configurable result caps and runtime bounds.

Use cases

  • Lead generation — build contactable lists covering amazon, product, category, search, pages
  • Data enrichment — attach crawls, listing, detail, collect, metadata to an existing record set
  • Market research — map titles, identifiers, such, asin, pricing across a category or region
  • Competitive monitoring — track list-price, information, currency, availability, stock over time on a schedule
  • AI and RAG pipelines — feed clean structured rows into embeddings and retrieval
  • Warehousing — land text, ratings, review, counts, rating into BigQuery, Snowflake or Postgres

Input

Provide targets as a list of URLs or identifiers, one per line.

inputpurpose
targetsURLs or identifiers to process, one per line
maxResultshard cap on returned rows
maxSecondsruntime bound for the run
includeEmptyreturn rows that resolved to no data, or skip them

Output

Every run writes a dataset exportable as CSV, Excel, JSON, or readable directly from the Apify API. Attach a webhook to push results into your own system as soon as a run finishes.

Integrations

Works with Zapier, Make, n8n, Google Sheets, Slack, and any HTTP endpoint via webhooks. The Apify MCP server exposes this Actor to AI agents directly.

Performance and limits

Runs are concurrent and bounded by maxResults and maxSeconds. Proxy rotation and retry handling are managed for you. Failed targets are reported rather than silently dropped.

Frequently asked questions

Do I need an account or cookies?

No. The Actor reads public data only and requires no login, cookies or personal API keys.

What formats can I export?

CSV, Excel, JSON, or read the dataset straight from the Apify API.

What does a row contain?

Every row carries amazon, product, category, search, pages, crawls, listing, detail where available.

Can I schedule it?

Yes. Attach a schedule or a webhook and the dataset is produced on your cadence.

How do I limit cost?

Use maxResults to cap returned rows and maxSeconds to bound runtime.

Is the output stable?

Field names are fixed by the dataset schema, so downstream pipelines do not break between runs.

Field glossary

name — the name associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. url — the url associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. phone — the phone associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. address — the address associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. website — the website associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. category — the category associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. rating — the rating associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. place_id — the place id associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. price_level — the price level associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. input — the input associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. isValid — the isValid associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. isPossible — the isPossible associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. type — the type associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift. scrapedAt — the scrapedAt associated with the record. Present on every row where the source exposes it; absent values are returned as null rather than omitted, so column order stays stable across runs and downstream schemas do not drift.

Troubleshooting

  • Empty dataset — Check that targets contains reachable identifiers and that includeEmpty is set the way you expect.
  • Run times out — Lower maxResults or raise maxSeconds; very large target lists are better split across scheduled runs.
  • Missing fields — Not every source exposes every field. Absent values are returned as null so the schema stays stable.
  • Rate limiting — Proxy rotation is automatic. If a source throttles hard, reduce concurrency and retry.
  • Duplicate rows — Output is deduplicated on the record identifier; duplicates across separate runs are expected by design.

Data quality notes

Records are parsed from public sources covering amazon, product, category, search, pages, crawls, listing, detail, collect, metadata. Values are returned exactly as published rather than normalised or inferred, so you can audit any row back to its source URL. Timestamps are ISO-8601 UTC. Numeric counters are integers. No field is synthesised when the source does not publish it.

Scheduling and automation

Attach a schedule to run this Actor hourly, daily or weekly. Combine it with a webhook to push each finished dataset into your warehouse, CRM or Slack channel automatically. Runs are idempotent with respect to their input, so a repeated schedule produces a comparable dataset rather than a drifting one.

Support

Open an issue on the Actor's Issues tab. Include the run ID and the input used so it can be reproduced.