A python API allowing users to:
- Scrape news articles from Google News.
- Extract the articles from the news sources.
- Create and post tweets(or now Xs) using
tweepy
. - Leverage PaLM to generate summaries from articles as tweets and to generate tweets.
- Pipeline and automate the scraping and tweeting procedure using a
cron
job.
For complete documentation and examples, please refer to the documentation.
pip install twitternewsbot
For more information on how to generate the following keys and tokens, please refer to the documentation.
-
To use the
tweepy
API to post tweets, you must have a Twitter developer account and create an app. You can create an app here. Don't worry, Twitter gives you 1 free app. Once you have created an app, you will need to generate the following keys and tokens:- Consumer API key
- Consumer API secret key
- Access token
- Access token secret
-
To use PaLM to generate tweets and completely automate the process, you will need to generate a PaLM API. To get this, you will need to sign up for the waitlist here. You can then generate the API key.
These keys must be stored in a .env
file in the root directory of your project. The .env
file should look like this:
API_KEY="your-key-here"
API_SECRET_KEY="your-key-here"
ACCESS_TOKEN="your-key-here"
ACCESS_TOKEN_SECRET="your-key-here"
GOOGLE_API_KEY="your-key-here"
The API is very simple to use. Here is a quick example:
from twitter_news_bot.tweeter import Tweeter
from twitter_news_bot.newsfinder import NewsFinder
from twitter_news_bot.twitternewsbot import TwitterNewsBot
# Create a NewsFinder and Tweeter Object
nf = NewsFinder()
t = Tweeter()
# Create a TwitterNewsBot object
tnb = TwitterNewsBot(nf, t, topic="AI")
# Run the TwitterNewsBOt to scrape articles, extract them, summarize them and post them as tweets
tnb.run()
- Add support for other summarization models such as OpenAI.
- Add region based searching for news articles on Google News.