scrapeunblocker 0.15.1 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3f62e1ad297dc0829c5aad20c1c09208595bb459b733b87d862c585fe64e12e5
4
- data.tar.gz: 9ce26e1db98023c5373d90229f0f9545fc11f71f28ba143e82710305aab6a811
3
+ metadata.gz: 28020ffea6eb49ad4418747a5f2fa7c4a55c0aa7b98fbc73abb1ad433bb9c0e5
4
+ data.tar.gz: 57624c5f914ef34100ef24788abe751d6844c68a2deda593075e2d032a6e93c1
5
5
  SHA512:
6
- metadata.gz: 150e385abf9ae36cde1653f4c411ab43d3735f6267fb6c8aab24d43caf37aa3da4dd8c7f6833dd6b207f45b374d01e6112f4a27e4a7007b4bcba2c812ce83b3e
7
- data.tar.gz: 2a7c1c9b01e7821b80dfd590e650a2766b56ecccaa28ae16c1b219f6ce2022d7b4d33c2108e33eed17319f794e9c052dbe6977a00964a201b15853fdadeefbf2
6
+ metadata.gz: a8710aac0acb04703254f1358abf8ea9f1096d6392232772730c6c4d95f06c8271784db5c6cbbad4c22ac1ddd2be09db35acf0bba3ac5332b2e9ebbdf6fb8651
7
+ data.tar.gz: 5e720ee147514e819bc97b33c8187784c9797dfbb6304ed9577c5e916039ca84561c2376eb669a0b946976fb6463c89a34fdeb8b3889c6c1c8340cd7e1ae1bab
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.16.0 (2026-10-29)
4
+
5
+ - Add `maps_reviews`: Google Maps reviews of a place in Google's sort orders (relevant, newest, highest, lowest) with exact ISO dates, original and translated text, authors, photos, owner replies and page tokens. `POST /maps/reviews`.
6
+
3
7
  ## 0.15.1 (2026-10-29)
4
8
 
5
9
  - `shopee_product` and `shopee_search` docs: describe `availability` and `inStock`, sold-out variations (`models[].available`, `tierIndex`), `categories` as the breadcrumb path plus `browseCategories`, `isPixPrice` (Brazilian Pix prices) and the JSON `{"status": "not_found", ...}` answer for a product that does not exist. Signatures are unchanged.
data/README.md CHANGED
@@ -149,7 +149,7 @@ jobs = su.career_site_jobs("https://jobs.ashbyhq.com/ramp", keyword: "engineer")
149
149
  | Category | Methods |
150
150
  | --- | --- |
151
151
  | Travel | `skyscanner.flights`, `skyscanner.hotels`, `skyscanner.carhire`, `booking_hotels`, `booking_reviews`, `airbnb_search`, `airbnb_room`, `airbnb_reviews`, `tripadvisor_list`, `tripadvisor_reviews` |
152
- | Google | `google_local`, `google_images`, `maps_place_details`, `google_trends`, `google_shopping`, `google_jobs`, `google_hotels`, `google_hotels_property`, `google_news`, `google_ads_transparency`, `google_ads_transparency_advertisers`, `google_ai_mode`, `google_lens` |
152
+ | Google | `google_local`, `google_images`, `maps_place_details`, `maps_reviews`, `google_trends`, `google_shopping`, `google_jobs`, `google_hotels`, `google_hotels_property`, `google_news`, `google_ads_transparency`, `google_ads_transparency_advertisers`, `google_ai_mode`, `google_lens` |
153
153
  | AI | `gemini` |
154
154
  | Search engines | `bing_search`, `bing_images`, `duckduckgo_search`, `yahoo_search`, `yahoo_images`, `brave_search`, `brave_images` |
155
155
  | E-commerce | `amazon_product`, `amazon_search`, `amazon_bestsellers`, `amazon_reviews`, `amazon_offers`, `amazon_seller`, `walmart_search`, `target_search`, `bestbuy_search`, `homedepot_search`, `costco_search`, `costco_product`, `etsy_search`, `shein_search`, `zalando_search`, `aliexpress_search`, `alibaba_search`, `alibaba_product`, `alibaba1688_search`, `alibaba1688_product`, `tiktok_shop_search`, `tiktok_shop_product`, `tiktok_shop_store`, `oopbuy_search`, `smyths_inventory`, `smyths_details`, `smyths_search`, `smyths_category`, `wish_search`, `wish_product`, `shopee_search`, `shopee_product`, `taobao_search`, `taobao_product`, `flipkart_search`, `flipkart_product`, `lazada_search`, `lazada_product`, `allegro_search`, `allegro_product`, `falabella_search`, `falabella_product`, `magazineluiza_search`, `magazineluiza_product` |
@@ -2638,6 +2638,51 @@ module ScrapeUnblocker
2638
2638
  })
2639
2639
  end
2640
2640
 
2641
+ # Scrape Google Maps reviews.
2642
+ #
2643
+ # Returns one Google Maps place's reviews as JSON, sorted the way Google sorts them:
2644
+ # `relevant`, `newest`, `highest` or `lowest`. Each review has `rating` (1-5), `date` (exact
2645
+ # ISO 8601, UTC) + `timestamp`, `relativeDate`, `text` (original) + `language`,
2646
+ # `translatedText` (into `hl`, when the review is in another language), `author`, `photos`,
2647
+ # `details` (guided answers such as 'Rooms: 5'), `ownerResponse` and `reviewUrl`. The answer
2648
+ # also carries a `place` summary and `nextPageToken` for paging. Identify the place with
2649
+ # `feature_id` (0xHEX:0xHEX), `place_id` (ChIJ...) or a Maps `url`. Reviews come in pages of
2650
+ # 20; each page fetched is one billed unit.
2651
+ #
2652
+ # @param url [String] A Google Maps place URL (share link or /maps/place/... URL). The
2653
+ # feature id or place_id is read out of it.
2654
+ # @param place_id [String] A Google place_id, e.g. 'ChIJN1t_tDeuEmsRUsoyG83frY4'.
2655
+ # @param feature_id [String] A Maps feature id '0xHEX:0xHEX', e.g.
2656
+ # '0x4776901a5d4813b3:0x2a497c8b414893c'. Fastest - no resolve step.
2657
+ # @param sort [String] Review order: 'relevant' (Google's default), 'newest', 'highest' or
2658
+ # 'lowest'. SerpApi's 'qualityScore', 'newestFirst', 'ratingHigh' and 'ratingLow' are
2659
+ # accepted too. API default: relevant.
2660
+ # @param max_reviews [Integer] How many reviews to return, 1-200. Reviews come in pages of
2661
+ # 20; each page fetched is one billed unit. API default: 20.
2662
+ # @param next_page_token [String] Continue from a previous answer's `nextPageToken` (same
2663
+ # place and sort). When `max_reviews` is not a multiple of 20 the next page can repeat a few
2664
+ # reviews - dedupe on `reviewId`.
2665
+ # @param hl [String] Language for Google's labels and the review translation
2666
+ # (`translatedText`), e.g. 'en', 'de'. The original text is always returned in `text`. API
2667
+ # default: en.
2668
+ # @param gl [String] Google country, ISO-2 lowercase, e.g. 'us'. API default: us.
2669
+ # @param proxy_country [String] Proxy country the request is sent from (ISO-2, e.g. 'US',
2670
+ # 'DE'). Reviews are the same from any country. API default: us.
2671
+ # Calls POST /maps/reviews.
2672
+ def maps_reviews(url: nil, place_id: nil, feature_id: nil, sort: nil, max_reviews: nil, next_page_token: nil, hl: nil, gl: nil, proxy_country: nil)
2673
+ post_json("/maps/reviews", {
2674
+ url: url,
2675
+ place_id: place_id,
2676
+ feature_id: feature_id,
2677
+ sort: sort,
2678
+ max_reviews: max_reviews,
2679
+ next_page_token: next_page_token,
2680
+ hl: hl,
2681
+ gl: gl,
2682
+ proxy_country: proxy_country,
2683
+ })
2684
+ end
2685
+
2641
2686
  # Scrape Google Hotels search results (prices, ratings, amenities).
2642
2687
  #
2643
2688
  # Runs a Google Hotels search for `q` and returns the properties as JSON: `name`, `type`
@@ -4744,7 +4789,7 @@ module ScrapeUnblocker
4744
4789
  # @param video [String] Video id (dQw4w9WgXcQ) or any YouTube video URL.
4745
4790
  # @param lang [String] Preferred caption language code, e.g. 'en'. Omit for the
4746
4791
  # default/first track. A prefix like 'en' matches 'en-US'.
4747
- # @param format [String] Output shape: segments, text. 'segments' returns timestamps; 'text'
4792
+ # @param format [String] Output shape: text, segments. 'segments' returns timestamps; 'text'
4748
4793
  # returns only the joined plaintext. API default: segments.
4749
4794
  # @param proxy_country [String] Proxy country the request is sent from (ISO-2, e.g. 'US',
4750
4795
  # 'DE') for the watch page. Defaults to US.
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ScrapeUnblocker
4
- VERSION = "0.15.1"
4
+ VERSION = "0.16.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scrapeunblocker
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.1
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - ScrapeUnblocker