Skip to main content

A package to receive full-range daily Google Trends data

Project description

✨ DailyTrends 5.0 (final/stable) ✨

Downloads

🚨 ALL BUGS FIXED🚨 - Update to version 5.0

  • Fully operational after new versions of pandas broke the restructuring pipe.
  • Google API change, so the code was adjusted (again).
  • The timerange can now be specified approximately.
  • The region (geo) can now be specified.

Purpose

This lightweight API solves the problem of getting only monthly-based data for large time series when collecting Google Trends data. No login required.

Installation

Install via PyPi:

$ pip install DailyTrends

Usage

>>> from DailyTrends.collect import collect_data

Queries are submitted in a gentle manner, which can be slow (but safe) for very large series.

>>> data = collect_data("AMD stock",start="2004-01-01", end="2019-07-06",
                    geo="", save=False, verbose=False)  
>>> data.info()

<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 5666 entries, 2004-01-01 to 2019-07-06
Freq: D
Data columns (total 1 columns):
AMD stock: (Worldwide)    5666 non-null float64
dtypes: float64(1)
memory usage: 88.5 KB
  • The returned dataframe is already indexed and ready for storage/analysis.
  • The end of the series defaults to "TODAY".
  • The start of the series defaults to "2004-01-01".
  • The geo parameter defaults to "", which yields global results.
# Plotting some rolling means of the daily data
>>> ax = data.rolling(10).mean().plot();
>>> data.rolling(25).mean().plot(ax=ax);
>>> data.rolling(50).mean().plot(ax=ax)

image.png

Add your own data

# In this case the historic prices of the stock
>>> import pandas as pd
>>> price_data = pd.read_csv("price_data.csv")
>>> merged = pd.merge(price_data, data,
                  left_index=True, right_index=True)
>>> merged[["AMD stock: (Worldwide)", "Open"]].rolling(30).mean().plot()

image.png

Load multiple queries

>>> data = collect_data(["Intel", "AMD"],start="2004-01-01", end="TODAY",
                    geo="DE", save=False, verbose=False)      
                

To-Do

  • Add Tor-Network-based requests

Disclaimer

This API is not supported by Google and is for experimental purposes only.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

DailyTrends-5.0.tar.gz (6.0 kB view hashes)

Uploaded Source

Built Distributions

DailyTrends-5.0-py3.9.egg (12.2 kB view hashes)

Uploaded Source

DailyTrends-5.0-py3-none-any.whl (7.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page