GeneralMills / pytrends

Pseudo API for Google Trends
Other
3.3k stars 822 forks source link

pytrends TooManyRequestsError: The request failed: Google returned a response with code 429 #631

Open akshmita opened 1 month ago

akshmita commented 1 month ago

I am trying to use pytrends to get historical data Example: from pytrends.request import TrendReq

pytrends = TrendReq(hl='en-US', tz=360) kw_list = ["HDFC bank"] pytrends.build_payload(kw_list, cat=0, timeframe='today 5-y', geo='', gprop='') pytrends.interest_over_time()

it gives the following error TooManyRequestsError: The request failed: Google returned a response with code 429 How to address this issue?

arkaydeus commented 1 month ago

Looks like google have upgraded their anti-bot measures. Currently this package is broken :-(

akshmita commented 1 month ago

Any other library to scrap the google trends data?

sdil87 commented 1 month ago

You can try trendspy - it uses a slightly different approach to the API. Install with pip install trendspy.

Your code would look like this:

from trendspy import Trends
tr = Trends()
df = tr.interest_over_time(['HDFC bank'], timeframe='today 5-y')

But keep in mind that if it's a Google-side blocking, it might not help.

Erico9002 commented 1 week ago

With pytrends I can do 30 requests per minute, and with trendspy 49.