Two new scrapers documented, Google Search Shopping add-on, Trustpilot and YouTube Channel gain new fields, LinkedIn Jobs Full Job Details becomes a paid add-on, MCP now ships 22 tools with Grok and Codex
Now Documented
Two scrapers that went public in the store had no API documentation. They now have full reference pages — task inputs, squid settings, result fields, and credit cost.- TripAdvisor Restaurant Details Scraper — paste a list of TripAdvisor restaurant URLs and get one row per place with city ranking, Travelers’ Choice and MICHELIN awards, four sub-ratings, the full 1-to-5-star rating distribution, cuisines, price range, address, phone, email, website and GPS coordinates. No account needed.
- Capterra Reviews Scraper — paste a Capterra product URL and export every review of that product: the full pros, cons and overall comments, the reasons for switching and for choosing it, the products the reviewer considered or switched from, all five ratings plus likelihood to recommend, the incentive disclosure, the vendor’s public reply and the reviewer’s profile (job title, industry, company size, time using the product, LinkedIn verification). Capterra’s regional sites (
.co.uk,.fr,.de,.com.br, …) are supported too. No account, no login.
New
Google Search Scraper — Shopping add-onA newcollect_shopping_results setting also collects the Google Shopping results for each keyword (first page, up to 40 products), using the same country, language and location as the organic search. Nine new fields are added to the result schema when the add-on is on: is_shopping, seller, price, price_amount, currency, rating, rating_count, image_url, product_id. Billed at 1 credit per shopping result (on top of the usual 1 credit per organic result). See update-settings and get-results.Trustpilot Reviews Scraper — sentiment, topics, review lifecycle, company profile and statsThe scraper now returns Trustpilot’s own sentiment analysis and topic tagging on every review (review_sentiment, review_sentiment_spans, review_topics), the review lifecycle flags (is_latest_by_consumer, is_latest_by_consumer_on_location, review_status, is_pending, is_filtered, owner_reply_updated_date), and the full company profile and stats once per company (company_name, company_category, company_page_url, company_website, company_domain, company_country, company_claimed, company_actively_inviting, company_paid_plan, company_category_rank, company_phone, company_email, company_address, company_description, company_logo, company_verification, company_location_count, company_business_closed, company_rating_breakdown, company_language_breakdown, company_reply_percentage, company_average_days_to_reply, company_negative_reviews_count, company_negative_reviews_replied, company_last_reply_to_negative). Timestamps (date_published, experience_date, owner_reply_date, updated_date) now come back as true UTC instead of Paris-local time wrongly labelled Z. New squid settings: topics (filter by topic), search_mode (“Any of the words” / “Exact phrase”), review_mode (“Latest review per consumer” / “Full history”), include_regional_domains, reviewer_country, sample_size, start_page. The url task input now also accepts a bare domain or brand name. See update-settings and get-results.LinkedIn Jobs Scraper — Full Job Details becomes a paid add-onOpening each job’s full page to collect the structured description, salary, seniority, industries, recruiter and apply link is now a billed add-on (job_details) at 1 credit per job, and off by default. The lightweight listing fields (title, company, location, posted date, apply link, snippet) stay included at the base 1 credit per job. If the task input is a single job URL, Full Job Details is free (the posting page is already fetched in full). See update-settings and credit-cost.YouTube Channel Scraper — four new fieldsNew columns on every channel row: subscribers_number (exact integer, so you can finally sort and filter — the old subscribers_count text like “21.3M subscribers” is still there), banner_url, is_verified, and email_source ("channel" when the email came from the channel About tab, "video_descriptions" when it was found in a video description). The database migration repairs the previously malformed url values (https://www.youtube.com/c/http%3A%2F%2Fwww.youtube.com%2F%40handle → https://www.youtube.com/@handle) and the one-day-early creation_date values on all historic rows. See get-results.MCP — 22 tools, Grok support, Codex setup- The lobstr.io MCP server now exposes 22 tools, up from 20:
update_scraperto change a squid’s settings in place, andwait_for_runto block until a run finishes (success, error, or timeout) instead of polling. - Grok is now a supported client (Grok Bots on a SuperGrok plan, or via a Cursor/Codex bridge). See the MCP page and the step-by-step Grok guide.
- Codex CLI setup is documented end-to-end:
codex mcp addfor the quick path, or a~/.codex/config.tomlentry for the long-lived one.
Improved
Google Search Scraper — keyword input only, filters that filter- The task input is now a Google Search keyword, not a URL. The field is
keyword; Google search links are rejected at submission time. Example:{"keyword": "crab"}. results_per_pagewas removed from the squid settings — Google ignoresnum>10, so a request for 100 silently returned 10, over-charged pagination, and misled users. The scraper now always requests 10 per page and paginates as needed.RESULT POSITIONis now the organic rank counted across pages — page 2’s first organic result is 11 (not 23), and People Also Ask / related-search rows no longer eat positions 11–22.PAGEis now served from the row’s own run, so a result deduplicated across runs no longer swaps page numbers between runs.
networkis now a pick list with the values LinkedIn’s own filter uses:1st,2nd,3rd+(comma-separated for several, e.g.1st,2nd). The previousF,S,Ocodes are no longer accepted.locationnow accepts a place name (e.g.France,Paris, orParis Texasto pick one city among namesakes). The LinkedIn numeric id still works, and so does a comma-separated list.industrynow accepts an industry name as LinkedIn lists it (e.g.Software Development,Hospitals and Health Care). The LinkedIn numeric id still works, and so does a comma-separated list.- The
companytooltip now spells out the precedence rule: if bothcompanyandcurrent_company_urlare filled, Current Company URL wins.
funding_stage and employee_count now accept several values at once, comma-separated (e.g. funding_stage: "seed,series_a", employee_count: "11-50,51-100"). The underlying API validation was fixed so comma-separated allowed-list inputs are stored as a clean comma string instead of being rejected as “not one of the allowed values”. See update-settings.Zillow Property Listings Scraper — Settings merge correctly with the URL, cleaner filter labels- Settings filters now merge correctly with the pasted URL’s filters: Sold or For rent switches the opposite market off, Home Type forces the chosen type on (so Only-Houses no longer silently keeps apartments), and setting one price or bedroom bound keeps the URL’s other bound instead of clearing it.
- The
days_on_sitesetting was renamed toListed or Sold Within(API param name unchanged). Tooltips on every filter now state which of the URL and the Settings wins.
get_posts and get_reels are off, the scraper now collects both (the sensible default) instead of silently returning zero rows. If you really want only one, turn one on. See update-settings.Squid forms — labels, tooltips, and where each setting livesFifteen scrapers had their squid form audited this week. Changes are label- and tooltip-only — no API param names were renamed, so existing integrations keep working.- Scrapers reworked: LinkedIn Jobs, LinkedIn Search, LinkedIn Company, LinkedIn Company Employees, YouTube Search, YouTube Transcript, TikTok Profile, TikTok Hashtag, Contact Details, Zillow, Naukri Jobs, Facebook Comments, Facebook Ad Library, Similarweb, Glassdoor Jobs, Upwork Jobs, Leboncoin Messages Reader, Quora.
- The Add tasks form and modal now show each task field’s display label (e.g. “Website” on Contact Details, “Profile URL or handle” on TikTok Profile, “Video, channel, playlist or search” on YouTube Search) instead of the raw field name.
Max Results Per Taskmoved to Basic Settings on scrapers where it is the main cost cap.Max Results Per Taskon Contact Details is now hidden (it never did anything there — one website, one row).- Similarweb:
Competitor Detailssetting relabelledCompetitor Metrics. - YouTube Search:
Get SubtitlesrelabelledDownload transcript,Subtitle LanguagerelabelledTranscript language,Has Subtitles/CCrelabelledOnly videos with captions. - Quora:
Resolve Most Viewed WritersrelabelledFlag Answers From Most-Viewed Writers.
& or + (e.g. Procter & Gamble) are kept intact across every page. The reviewer_country enrichment is now bounded (no runaway scans), and a flaky request now retries on a softer path instead of failing the task.Fixed
- LinkedIn Connections Export — the
/voyager/.../profileContactInfoendpoint moved; the module now reads emails from LinkedIn’s current profile request, and410 Gone,400,429,403on the/feed/login check and a repeated401or999all pause the run (with the account markedcookies_expiredwhere appropriate) instead of ending it in ERROR. The connections search also uses LinkedIn’s livequeryId(looked up from the feed scripts, or falls back to the last known one), fixing the empty 400 responses. Email and profile lookups now count under the account’s daily profiles limit. - Sales Navigator Leads Scraper — a LinkedIn
429 Too Many Requestsnow pauses the run while the account cools down, instead of raisingAssertionErrorand ending the run in ERROR. - Sales Navigator Profile Scraper — same
429fix; saved-search tasks no longer swallow a run-level pause. - YouTube Channel Scraper — items on the Playlists tab that are podcasts or shows now link to their playlist page (
/playlist?list=...), not to a/watch?v=PL...URL that doesn’t open. Shorts, playlist links, creation date, non-English handles and emails obfuscated asname [at] domain.comare now handled; the collector pages past 30 items and no longer leaks the previous channel after a 404. - TikTok Comments Scraper — a proxy or network failure now rotates to a new proxy exit before each retry. After five failed exits in a row, the run pauses for an hour instead of crashing.
- TikTok Hashtag Scraper — waits up to 200 s for page 1 (TikTok is slow on cold hashtags), rotates proxy on retry, and
NotFoundis only raised on TikTok’s own “video currently not available” response. - Idealista Listings Search Export — new-build units no longer come back with an empty
condition; the parser now reads Idealista’s “New home development” phrase. - Google Maps Leads Scraper —
geo_matchis tightened to postal code, parses two-part UK postcodes, tolerates partial codes, and drops results without a ZIP when the task has one. The duplicateauto_verify_emailssquid param (two entries with the same name inlobstr.json) was dropped. Finished runs are frozen so a later run never rewrites the email-verification verdicts of a completed one (placeholder/template emails are short-circuited before the verifier call; template local-parts are only dropped on freemail domains). - SeLoger Search Export —
short_descriptionnow defaults toNonewhen the listing has no description, fixing theItemNotFoundcrash. - Trustpilot Reviews Scraper — the WAF token minter runs on both Node 18 and Node 20.
- Yelp Reviews Scraper —
not_recommendedreviews now show up on biz pages whose URL alias differs from Yelp’s canonical alias.