Skip to content

Commit b89a1b4

Browse files
author
vlad-outscraper
committed
update search, add new versions to docs
1 parent 496042e commit b89a1b4

File tree

4 files changed

+16
-44
lines changed

4 files changed

+16
-44
lines changed

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -35,13 +35,13 @@ results = client.google_search_news('election', language='en')
3535

3636
```python
3737
# Search for businesses in specific locations:
38-
results = client.google_maps_search('restaurants brooklyn usa', limit=20, language='en')
38+
results = client.google_maps_search_v2('restaurants brooklyn usa', limit=20, language='en')
3939

4040
# Get data of the specific place by id
41-
results = client.google_maps_search('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')
41+
results = client.google_maps_search_v2('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')
4242

4343
# Search with many queries (batching)
44-
results = client.google_maps_search([
44+
results = client.google_maps_search_v2([
4545
'restaurants brooklyn usa',
4646
'bars brooklyn usa',
4747
], language='en')
@@ -52,16 +52,16 @@ results = client.google_maps_search([
5252

5353
```python
5454
# Get reviews of the specific place by id
55-
results = client.google_maps_reviews('ChIJrc9T9fpYwokRdvjYRHT8nI4', reviews_limit=20, language='en')
55+
results = client.google_maps_reviews_v3('ChIJrc9T9fpYwokRdvjYRHT8nI4', reviews_limit=20, language='en')
5656

5757
# Get reviews for places found by search query
58-
results = client.google_maps_reviews('Memphis Seoul brooklyn usa', reviews_limit=20, limit=500, language='en')
58+
results = client.google_maps_reviews_v3('Memphis Seoul brooklyn usa', reviews_limit=20, limit=500, language='en')
5959

6060
# Get only new reviews during last 24 hours
6161
from datetime import datetime, timedelta
6262
yesterday_timestamp = int((datetime.now() - timedelta(1)).timestamp())
6363

64-
results = client.google_maps_reviews(
64+
results = client.google_maps_reviews_v3(
6565
'ChIJrc9T9fpYwokRdvjYRHT8nI4', sort='newest', cutoff=yesterday_timestamp, reviews_limit=100, language='en')
6666
```
6767

README.rst

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -49,13 +49,13 @@ Scrape Google Maps (Places)
4949
.. code:: python
5050
5151
# Search for businesses in specific locations:
52-
results = client.google_maps_search('restaurants brooklyn usa', limit=20, language='en')
52+
results = client.google_maps_search_v2('restaurants brooklyn usa', limit=20, language='en')
5353
5454
# Get data of the specific place by id
55-
results = client.google_maps_search('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')
55+
results = client.google_maps_search_v2('ChIJrc9T9fpYwokRdvjYRHT8nI4', language='en')
5656
5757
# Search with many queries (batching)
58-
results = client.google_maps_search([
58+
results = client.google_maps_search_v2([
5959
'restaurants brooklyn usa',
6060
'bars brooklyn usa',
6161
], language='en')
@@ -66,16 +66,16 @@ Scrape Google Maps Reviews
6666
.. code:: python
6767
6868
# Get reviews of the specific place by id
69-
results = client.google_maps_reviews('ChIJrc9T9fpYwokRdvjYRHT8nI4', reviews_limit=20, language='en')
69+
results = client.google_maps_reviews_v3('ChIJrc9T9fpYwokRdvjYRHT8nI4', reviews_limit=20, language='en')
7070
7171
# Get reviews for places found by search query
72-
results = client.google_maps_reviews('Memphis Seoul brooklyn usa', reviews_limit=20, limit=500, language='en')
72+
results = client.google_maps_reviews_v3('Memphis Seoul brooklyn usa', reviews_limit=20, limit=500, language='en')
7373
7474
# Get only new reviews during last 24 hours
7575
from datetime import datetime, timedelta
7676
yesterday_timestamp = int((datetime.now() - timedelta(1)).timestamp())
7777
78-
results = client.google_maps_reviews(
78+
results = client.google_maps_reviews_v3(
7979
'ChIJrc9T9fpYwokRdvjYRHT8nI4', sort='newest', cutoff=yesterday_timestamp, reviews_limit=100, language='en')
8080
8181
Scrape Google Maps Photos

outscraper/api_client.py

Lines changed: 3 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -85,37 +85,6 @@ def _wait_request_archive(self, request_id: str) -> dict:
8585
raise Exception('Timeout exceeded')
8686

8787
def google_search(self, query: list, pages_per_query: int = 1, uule = '', language: str = 'en', region: str = None, fields: list = None) -> list:
88-
'''
89-
Get data from Google search
90-
91-
Parameters:
92-
query (list | str): parameter defines the query or queries you want to search on Google. Using a lists allows multiple queries (up to 25) to be sent in one request and save on network latency time.
93-
pages_per_query (int): parameter specifies the limit of pages to return from one query.
94-
uule (str): Google UULE parameter is used to encode a place or an exact location (with latitude and longitude) into a code. By using it you can see a Google result page like someone located at the specified location.
95-
language (str): parameter specifies the language to use for Google. Available values: "en", "de", "es", "es-419", "fr", "hr", "it", "nl", "pl", "pt-BR", "pt-PT", "vi", "tr", "ru", "ar", "th", "ko", "zh-CN", "zh-TW", "ja", "ach", "af", "ak", "ig", "az", "ban", "ceb", "xx-bork", "bs", "br", "ca", "cs", "sn", "co", "cy", "da", "yo", "et", "xx-elmer", "eo", "eu", "ee", "tl", "fil", "fo", "fy", "gaa", "ga", "gd", "gl", "gn", "xx-hacker", "ht", "ha", "haw", "bem", "rn", "id", "ia", "xh", "zu", "is", "jw", "rw", "sw", "tlh", "kg", "mfe", "kri", "la", "lv", "to", "lt", "ln", "loz", "lua", "lg", "hu", "mg", "mt", "mi", "ms", "pcm", "no", "nso", "ny", "nn", "uz", "oc", "om", "xx-pirate", "ro", "rm", "qu", "nyn", "crs", "sq", "sk", "sl", "so", "st", "sr-ME", "sr-Latn", "su", "fi", "sv", "tn", "tum", "tk", "tw", "wo", "el", "be", "bg", "ky", "kk", "mk", "mn", "sr", "tt", "tg", "uk", "ka", "hy", "yi", "iw", "ug", "ur", "ps", "sd", "fa", "ckb", "ti", "am", "ne", "mr", "hi", "bn", "pa", "gu", "or", "ta", "te", "kn", "ml", "si", "lo", "my", "km", "chr".
96-
region (str): parameter specifies the region to use for Google. Available values: "AF", "AL", "DZ", "AS", "AD", "AO", "AI", "AG", "AR", "AM", "AU", "AT", "AZ", "BS", "BH", "BD", "BY", "BE", "BZ", "BJ", "BT", "BO", "BA", "BW", "BR", "VG", "BN", "BG", "BF", "BI", "KH", "CM", "CA", "CV", "CF", "TD", "CL", "CN", "CO", "CG", "CD", "CK", "CR", "CI", "HR", "CU", "CY", "CZ", "DK", "DJ", "DM", "DO", "EC", "EG", "SV", "EE", "ET", "FJ", "FI", "FR", "GA", "GM", "GE", "DE", "GH", "GI", "GR", "GL", "GT", "GG", "GY", "HT", "HN", "HK", "HU", "IS", "IN", "ID", "IQ", "IE", "IM", "IL", "IT", "JM", "JP", "JE", "JO", "KZ", "KE", "KI", "KW", "KG", "LA", "LV", "LB", "LS", "LY", "LI", "LT", "LU", "MG", "MW", "MY", "MV", "ML", "MT", "MU", "MX", "FM", "MD", "MN", "ME", "MS", "MA", "MZ", "MM", "NA", "NR", "NP", "NL", "NZ", "NI", "NE", "NG", "NU", "MK", "NO", "OM", "PK", "PS", "PA", "PG", "PY", "PE", "PH", "PN", "PL", "PT", "PR", "QA", "RO", "RU", "RW", "WS", "SM", "ST", "SA", "SN", "RS", "SC", "SL", "SG", "SK", "SI", "SB", "SO", "ZA", "KR", "ES", "LK", "SH", "VC", "SR", "SE", "CH", "TW", "TJ", "TZ", "TH", "TL", "TG", "TO", "TT", "TN", "TR", "TM", "VI", "UG", "UA", "AE", "GB", "US", "UY", "UZ", "VU", "VE", "VN", "ZM", "ZW".
97-
fields (list): parameter defines which fields you want to include with each item returned in the response. By default, it returns all fields.
98-
99-
Returns:
100-
list: json result
101-
102-
See: https://app.outscraper.com/api-docs#tag/Google-Search/paths/~1google-search-v2/get
103-
'''
104-
response = requests.get(f'{self._api_url}/google-search-v2', params={
105-
'query': as_list(query),
106-
'pagesPerQuery': pages_per_query,
107-
'uule': uule,
108-
'language': language,
109-
'region': region,
110-
'fields': ','.join(fields) if fields else '',
111-
}, headers=self._api_headers)
112-
113-
if 199 < response.status_code < 300:
114-
return self._wait_request_archive(response.json()['id']).get('data', [])
115-
116-
raise Exception(f'Response status code: {response.status_code}')
117-
118-
def google_search_v3(self, query: list, pages_per_query: int = 1, uule = '', language: str = 'en', region: str = None, fields: list = None) -> list:
11988
'''
12089
Get data from Google search
12190
@@ -454,6 +423,9 @@ def google_maps_business_reviews(self, *args, **kwargs) -> list: # deprecated
454423
def google_maps_reviews_v2(self, *args, **kwargs) -> list: # alias
455424
return self.google_maps_reviews(*args, **kwargs)
456425

426+
def google_search_v3(self, *args, **kwargs) -> list: # alias
427+
return self.google_search(*args, **kwargs)
428+
457429
def google_play_reviews(self, query: list, reviews_limit: int = 100, sort: str = 'most_relevant', cutoff: int = None,
458430
rating: int = None, language: str = 'en', fields: list = None
459431
) -> list:

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ def readme():
88

99
setup(
1010
name='outscraper',
11-
version='1.7.2',
11+
version='1.8.0',
1212
description='Python bindings for the Outscraper API',
1313
long_description=readme(),
1414
classifiers = ['Programming Language :: Python',

0 commit comments

Comments
 (0)