A free competitor RSS and Alert based on Notion and Google alerts Generate a Feeder RSS config file, sorted by categories to watch your competitors news
NOTION-DATABASE <-> Google Alerts <-> RSS App
A Notion database is used as a source of companies and keywords names to watch for Names and keywords are automatically synced with Google alerts RSS generator Google Alerts RSS urls are collected and merge in a ready to use Feeder config file
Init a seed session based on Google Alerts readme
$ docker pull m07ak/main-company-watcher:latest
$ docker run --env-file ./.env -v [YOUR_LOCAL_PATH_TO_SEED_CONFIG]:[GOOGLE_ALERT_CONFIG] m07ak/main-company-watcher:latest
$ git clone --recurse-submodules https://github.com/M07ak/company-watcher.git
$ cd company-watcher
$ apt-get -y install chromium-browser python3-selenium
$ pip install -r requirements.txt
- In google-alerts submodule
$ python setup.py install
- Follow Google Alerts readme to Seed your GoogleAlerts configuration from a browser
- Commands:
- Remote-Containers: Rebuild Container or
- Remote-Containers: Reopen in Container
- First config .env variable following instructions
$ docker pull m07ak/main-company-watcher:latest
$ docker run --env-file ./.env -v [YOUR_LOCAL_PATH_TO_SEED_CONFIG]:[GOOGLE_ALERT_CONFIG] m07ak/main-company-watcher:latest
Copy .env.template into .env and/or .devcontainer/devcontainer.env (if you plan to use Vs Code Devcontainers) Replace placeholder with your values
NOTION_TOKEN
- A Notion API Token with permissions on the following Notion pages. See Notion documentation
NOTION_SOURCE_DATABASE_PAGE_ID
- A Notion database ID based on the following example: Example
NOTION_OUTPUT_GOOGLE_NEWS_DASHBOARD_PAGE_ID
- A Notion void page id. This page will be used to generate a Dashboard to quickly browse Google News
- This page will be overwritten each time the program will be run
- Example of dashboard generated with the previously defined source example Dashboard
- To find a page id, you can use the simple cli in this projet, with your NOTION_TOKEN in env:
python search_notion_page_id.py --search "The page name"
NOTION_OUTPUT_RSS_PAGE_ID
- A Notion void page id. This page will be used to generate a Dashboard to export Feeder config or get raw RSS urls
- This page will be overwritten each time the program will be run
- Example of dashboard generated with the previously defined source example Dashboard
- To find a page id, you can use the simple cli in this projet, with your NOTION_TOKEN in env:
python search_notion_page_id.py --search "The page name"
GITHUB_TOKEN
- A Github personal access token with permission to use Gist Documentation
FEEDER_GIST_ID
- A Github Gist unique id to save feeder config file output
GOOGLE_EMAIL
- A Google acccount email
- Even though I've never had a problems, I recommend to use a dedicated Google account, to be sure that in case of problem, your real Google account won't be banned
GOOGLE_PASSWORD
- A Google acccount password
- Even though I've never had a problems, I recommend to use a dedicated Google account, to be sure that in case of problem, your real Google account won't be banned
GOOGLE_ALERT_CONFIG
- A local path to save your Google session
- Run program to populate Notion pages
$ python3 run.py
- Export file written in Gist to opml file and import it in Feeder app Play Store F-droid
docker build . --file=dockerfiles/news-feeding-dockerfile -t m07ak/news-feeder-company-watcher:latest
docker build . --file=dockerfiles/main-dockerfile -t m07ak/main-company-watcher:latest