Last active
January 30, 2022 17:58
-
-
Save khaledadrani/8d24ff07bcc5556eb3b1a32cb95a9d80 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import os | |
from dotenv import load_dotenv | |
import requests | |
#load your credentials through the .env file | |
load_dotenv() | |
def create_headers(): | |
api_key = os.getenv('api_key') | |
api_key_secret = os.getenv('api_key_secret') | |
bearer_token = os.getenv('bearer_token') | |
access_token = os.getenv('acess_token') | |
access_token_secret = os.getenv('acess_token_secret') | |
headers = { | |
"access_token":access_token, | |
"access_token_secret":access_token_secret, | |
"Authorization":'Bearer '+bearer_token, | |
"api_key_secret":api_key_secret, | |
"api_key":api_key | |
} | |
return headers | |
def create_url(keyword, max_results = 10): | |
search_url = "https://api.twitter.com/2/tweets/search/recent?" | |
query_params = {'query': keyword, | |
'max_results': max_results, | |
'tweet.fields': 'public_metrics'} | |
return (search_url, query_params) | |
def connect_to_endpoint(url, headers, params): | |
response = requests.request("GET", url, headers = headers, params = params) | |
print("Endpoint Response Code: " + str(response.status_code)) | |
if response.status_code != 200: | |
raise Exception(response.status_code, response.text) | |
return response.json() | |
def get_response(keyword="stocks",max_results=10,verbose=False): | |
headers = create_headers() | |
url = create_url(keyword, max_results=10) | |
json_response = connect_to_endpoint(url[0], headers, url[1]) | |
if verbose: | |
print(json_response) | |
print(type(json_response)) | |
return json_response['data'] | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment