mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-04-08 03:00:28 -04:00
fix expansions in tweet block
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
from datetime import datetime
|
||||
from typing import Any, Dict
|
||||
|
||||
from backend.blocks.twitter._mappers import (
|
||||
@@ -37,7 +38,7 @@ class TweetExpansionsBuilder:
|
||||
def __init__(self, param: Dict[str, Any]):
|
||||
self.params: Dict[str, Any] = param
|
||||
|
||||
def add_expansions(self, expansions: ExpansionFilter):
|
||||
def add_expansions(self, expansions: ExpansionFilter | None):
|
||||
if expansions:
|
||||
filtered_expansions = [
|
||||
name for name, value in expansions.dict().items() if value is True
|
||||
@@ -48,10 +49,9 @@ class TweetExpansionsBuilder:
|
||||
[get_backend_expansion(exp) for exp in filtered_expansions]
|
||||
)
|
||||
|
||||
print("all_expansions : ", self.params["expansions"])
|
||||
return self
|
||||
|
||||
def add_media_fields(self, media_fields: TweetMediaFieldsFilter):
|
||||
def add_media_fields(self, media_fields: TweetMediaFieldsFilter | None):
|
||||
if media_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in media_fields.dict().items() if value is True
|
||||
@@ -62,7 +62,7 @@ class TweetExpansionsBuilder:
|
||||
)
|
||||
return self
|
||||
|
||||
def add_place_fields(self, place_fields: TweetPlaceFieldsFilter):
|
||||
def add_place_fields(self, place_fields: TweetPlaceFieldsFilter | None):
|
||||
if place_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in place_fields.dict().items() if value is True
|
||||
@@ -73,7 +73,7 @@ class TweetExpansionsBuilder:
|
||||
)
|
||||
return self
|
||||
|
||||
def add_poll_fields(self, poll_fields: TweetPollFieldsFilter):
|
||||
def add_poll_fields(self, poll_fields: TweetPollFieldsFilter | None):
|
||||
if poll_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in poll_fields.dict().items() if value is True
|
||||
@@ -84,7 +84,7 @@ class TweetExpansionsBuilder:
|
||||
)
|
||||
return self
|
||||
|
||||
def add_tweet_fields(self, tweet_fields: TweetFieldsFilter):
|
||||
def add_tweet_fields(self, tweet_fields: TweetFieldsFilter | None):
|
||||
if tweet_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in tweet_fields.dict().items() if value is True
|
||||
@@ -95,7 +95,7 @@ class TweetExpansionsBuilder:
|
||||
)
|
||||
return self
|
||||
|
||||
def add_user_fields(self, user_fields: TweetUserFieldsFilter):
|
||||
def add_user_fields(self, user_fields: TweetUserFieldsFilter | None):
|
||||
if user_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in user_fields.dict().items() if value is True
|
||||
@@ -114,7 +114,7 @@ class UserExpansionsBuilder:
|
||||
def __init__(self, param: Dict[str, Any]):
|
||||
self.params: Dict[str, Any] = param
|
||||
|
||||
def add_expansions(self, expansions: UserExpansionsFilter):
|
||||
def add_expansions(self, expansions: UserExpansionsFilter | None):
|
||||
if expansions:
|
||||
filtered_expansions = [
|
||||
name for name, value in expansions.dict().items() if value is True
|
||||
@@ -123,7 +123,7 @@ class UserExpansionsBuilder:
|
||||
self.params["expansions"] = ",".join(filtered_expansions)
|
||||
return self
|
||||
|
||||
def add_tweet_fields(self, tweet_fields: TweetFieldsFilter):
|
||||
def add_tweet_fields(self, tweet_fields: TweetFieldsFilter | None):
|
||||
if tweet_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in tweet_fields.dict().items() if value is True
|
||||
@@ -134,7 +134,7 @@ class UserExpansionsBuilder:
|
||||
)
|
||||
return self
|
||||
|
||||
def add_user_fields(self, user_fields: TweetUserFieldsFilter):
|
||||
def add_user_fields(self, user_fields: TweetUserFieldsFilter | None):
|
||||
if user_fields:
|
||||
filtered_fields = [
|
||||
name for name, value in user_fields.dict().items() if value is True
|
||||
@@ -235,27 +235,27 @@ class TweetDurationBuilder:
|
||||
def __init__(self, param: Dict[str, Any]):
|
||||
self.params: Dict[str, Any] = param
|
||||
|
||||
def add_start_time(self, start_time: str):
|
||||
def add_start_time(self, start_time: datetime | None):
|
||||
if start_time:
|
||||
self.params["start_time"] = start_time
|
||||
return self
|
||||
|
||||
def add_end_time(self, end_time: str):
|
||||
def add_end_time(self, end_time: datetime | None):
|
||||
if end_time:
|
||||
self.params["end_time"] = end_time
|
||||
return self
|
||||
|
||||
def add_since_id(self, since_id: str):
|
||||
def add_since_id(self, since_id: str | None):
|
||||
if since_id:
|
||||
self.params["since_id"] = since_id
|
||||
return self
|
||||
|
||||
def add_until_id(self, until_id: str):
|
||||
def add_until_id(self, until_id: str | None):
|
||||
if until_id:
|
||||
self.params["until_id"] = until_id
|
||||
return self
|
||||
|
||||
def add_sort_order(self, sort_order: str):
|
||||
def add_sort_order(self, sort_order: str | None):
|
||||
if sort_order:
|
||||
self.params["sort_order"] = sort_order
|
||||
return self
|
||||
@@ -327,7 +327,7 @@ class TweetSearchBuilder:
|
||||
self.params["query"] = query
|
||||
return self
|
||||
|
||||
def add_pagination(self, max_results: int, pagination: str):
|
||||
def add_pagination(self, max_results: int, pagination: str | None):
|
||||
if max_results:
|
||||
self.params["max_results"] = max_results
|
||||
if pagination:
|
||||
|
||||
@@ -269,7 +269,6 @@ class TweetExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what media details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
place_fields: TweetPlaceFieldsFilter | None = SchemaField(
|
||||
@@ -277,7 +276,6 @@ class TweetExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what location details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
poll_fields: TweetPollFieldsFilter | None = SchemaField(
|
||||
@@ -285,7 +283,6 @@ class TweetExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what poll details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
tweet_fields: TweetFieldsFilter | None = SchemaField(
|
||||
@@ -293,7 +290,6 @@ class TweetExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what tweet details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
user_fields: TweetUserFieldsFilter | None = SchemaField(
|
||||
@@ -301,7 +297,6 @@ class TweetExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what user details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
|
||||
@@ -318,7 +313,6 @@ class DMEventExpansionInputs(BlockSchema):
|
||||
placeholder="Enter event types",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
media_fields: DMMediaFieldFilter | None = SchemaField(
|
||||
@@ -326,7 +320,6 @@ class DMEventExpansionInputs(BlockSchema):
|
||||
placeholder="Enter media fields",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
tweet_fields: DMTweetFieldFilter | None = SchemaField(
|
||||
@@ -334,7 +327,6 @@ class DMEventExpansionInputs(BlockSchema):
|
||||
placeholder="Enter tweet fields",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
user_fields: TweetUserFieldsFilter | None = SchemaField(
|
||||
@@ -342,7 +334,6 @@ class DMEventExpansionInputs(BlockSchema):
|
||||
placeholder="Enter user fields",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
|
||||
@@ -359,7 +350,6 @@ class UserExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what details to see in pinned tweets",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
user_fields: TweetUserFieldsFilter | None = SchemaField(
|
||||
@@ -367,7 +357,6 @@ class UserExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what user details you want to see",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
|
||||
@@ -384,7 +373,6 @@ class SpaceExpansionInputs(BlockSchema):
|
||||
placeholder="Choose what Space information you want to get",
|
||||
default=SpaceFieldsFilter(Space_Title=True, Host_User_IDs=True),
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
user_fields: TweetUserFieldsFilter | None = SchemaField(
|
||||
@@ -392,7 +380,6 @@ class SpaceExpansionInputs(BlockSchema):
|
||||
placeholder="Pick what details you want to see about the users",
|
||||
default=None,
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
|
||||
@@ -409,7 +396,6 @@ class ListExpansionInputs(BlockSchema):
|
||||
placeholder="Select what details you want to see about list owners",
|
||||
default=TweetUserFieldsFilter(User_ID=True, Username=True),
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
list_fields: ListFieldsFilter | None = SchemaField(
|
||||
@@ -417,7 +403,6 @@ class ListExpansionInputs(BlockSchema):
|
||||
placeholder="Pick what list details you want to see",
|
||||
default=ListFieldsFilter(Owner_ID=True),
|
||||
advanced=True,
|
||||
depends_on=["expansions"]
|
||||
)
|
||||
|
||||
|
||||
|
||||
@@ -184,13 +184,13 @@ class TwitterGetBookmarkedTweetsBlock(Block):
|
||||
def get_bookmarked_tweets(
|
||||
credentials: TwitterCredentials,
|
||||
max_results: int,
|
||||
pagination_token: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
pagination_token: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter |None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -190,11 +190,11 @@ class TwitterGetLikingUsersBlock(Block):
|
||||
def get_liking_users(
|
||||
credentials: TwitterCredentials,
|
||||
tweet_id: str,
|
||||
max_results: int,
|
||||
pagination_token: str,
|
||||
expansions: UserExpansionsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
max_results: int ,
|
||||
pagination_token: str | None,
|
||||
expansions: UserExpansionsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
@@ -385,13 +385,13 @@ class TwitterGetLikedTweetsBlock(Block):
|
||||
credentials: TwitterCredentials,
|
||||
user_id: str,
|
||||
max_results: int,
|
||||
pagination_token: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
pagination_token: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter |None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
from datetime import datetime
|
||||
from typing import cast
|
||||
|
||||
import tweepy
|
||||
@@ -372,18 +373,18 @@ class TwitterSearchRecentTweetsBlock(Block):
|
||||
"query": "from:twitterapi #twitterapi",
|
||||
"credentials": TEST_CREDENTIALS_INPUT,
|
||||
"max_results": 10,
|
||||
"start_time": "",
|
||||
"end_time": "",
|
||||
"since_id": "",
|
||||
"until_id": "",
|
||||
"sort_order": "",
|
||||
"pagination": "",
|
||||
"expansions": [],
|
||||
"media_fields": [],
|
||||
"place_fields": [],
|
||||
"poll_fields": [],
|
||||
"tweet_fields": [],
|
||||
"user_fields": [],
|
||||
"start_time": None,
|
||||
"end_time": None,
|
||||
"since_id": None,
|
||||
"until_id": None,
|
||||
"sort_order": None,
|
||||
"pagination": None,
|
||||
"expansions": None,
|
||||
"media_fields": None,
|
||||
"place_fields": None,
|
||||
"poll_fields": None,
|
||||
"tweet_fields": None,
|
||||
"user_fields": None,
|
||||
},
|
||||
test_credentials=TEST_CREDENTIALS,
|
||||
test_output=[
|
||||
@@ -438,18 +439,18 @@ class TwitterSearchRecentTweetsBlock(Block):
|
||||
credentials: TwitterCredentials,
|
||||
query: str,
|
||||
max_results: int,
|
||||
start_time: str,
|
||||
end_time: str,
|
||||
since_id: str,
|
||||
until_id: str,
|
||||
sort_order: str,
|
||||
pagination: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
start_time: datetime | None,
|
||||
end_time: datetime | None,
|
||||
since_id: str | None,
|
||||
until_id: str | None,
|
||||
sort_order: str | None,
|
||||
pagination: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -128,14 +128,14 @@ class TwitterGetQuoteTweetsBlock(Block):
|
||||
credentials: TwitterCredentials,
|
||||
tweet_id: str,
|
||||
max_results: int,
|
||||
exclude: TweetExcludesFilter,
|
||||
pagination_token: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
exclude: TweetExcludesFilter | None,
|
||||
pagination_token: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter |None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -272,9 +272,9 @@ class TwitterGetRetweetersBlock(Block):
|
||||
tweet_id: str,
|
||||
max_results: int,
|
||||
pagination_token: str,
|
||||
expansions: UserExpansionsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
expansions: UserExpansionsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
from datetime import datetime
|
||||
from typing import cast
|
||||
|
||||
import tweepy
|
||||
@@ -143,18 +144,18 @@ class TwitterGetUserMentionsBlock(Block):
|
||||
credentials: TwitterCredentials,
|
||||
user_id: str,
|
||||
max_results: int,
|
||||
start_time: str,
|
||||
end_time: str,
|
||||
since_id: str,
|
||||
until_id: str,
|
||||
sort_order: str,
|
||||
pagination: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
start_time: datetime | None,
|
||||
end_time: datetime | None,
|
||||
since_id: str | None,
|
||||
until_id: str | None,
|
||||
sort_order: str | None,
|
||||
pagination: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
@@ -376,18 +377,18 @@ class TwitterGetHomeTimelineBlock(Block):
|
||||
def get_timeline(
|
||||
credentials: TwitterCredentials,
|
||||
max_results: int,
|
||||
start_time: str,
|
||||
end_time: str,
|
||||
since_id: str,
|
||||
until_id: str,
|
||||
sort_order: str,
|
||||
pagination: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
start_time: datetime | None,
|
||||
end_time: datetime | None,
|
||||
since_id: str | None,
|
||||
until_id: str | None,
|
||||
sort_order: str | None,
|
||||
pagination: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
@@ -620,18 +621,18 @@ class TwitterGetUserTweetsBlock(Block):
|
||||
credentials: TwitterCredentials,
|
||||
user_id: str,
|
||||
max_results: int,
|
||||
start_time: str,
|
||||
end_time: str,
|
||||
since_id: str,
|
||||
until_id: str,
|
||||
sort_order: str,
|
||||
pagination: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
start_time: datetime | None,
|
||||
end_time: datetime | None,
|
||||
since_id: str | None,
|
||||
until_id: str | None,
|
||||
sort_order: str | None,
|
||||
pagination: str | None,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None ,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter |None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
@@ -102,12 +102,12 @@ class TwitterGetTweetBlock(Block):
|
||||
def get_tweet(
|
||||
credentials: TwitterCredentials,
|
||||
tweet_id: str,
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
@@ -268,12 +268,12 @@ class TwitterGetTweetsBlock(Block):
|
||||
def get_tweets(
|
||||
credentials: TwitterCredentials,
|
||||
tweet_ids: list[str],
|
||||
expansions: ExpansionFilter,
|
||||
media_fields: TweetMediaFieldsFilter,
|
||||
place_fields: TweetPlaceFieldsFilter,
|
||||
poll_fields: TweetPollFieldsFilter,
|
||||
tweet_fields: TweetFieldsFilter,
|
||||
user_fields: TweetUserFieldsFilter,
|
||||
expansions: ExpansionFilter | None,
|
||||
media_fields: TweetMediaFieldsFilter | None,
|
||||
place_fields: TweetPlaceFieldsFilter | None,
|
||||
poll_fields: TweetPollFieldsFilter | None,
|
||||
tweet_fields: TweetFieldsFilter | None,
|
||||
user_fields: TweetUserFieldsFilter | None,
|
||||
):
|
||||
try:
|
||||
client = tweepy.Client(
|
||||
|
||||
Reference in New Issue
Block a user