Skip to content

Commit 85ca957

Browse files
authored
Merge pull request #3 from bytesview/new_updates
changed news endpoint to latest and added excludefield parameter
2 parents ab86bbb + 5951a68 commit 85ca957

3 files changed

Lines changed: 12 additions & 11 deletions

File tree

newsdataapi/constants.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
BASE_URL = 'https://newsdata.io/api/1/'
33

44
# Latest News URL
5-
NEWS_URL = BASE_URL + 'news'
5+
LATEST_URL = BASE_URL + 'latest'
66

77
# News Archive URL
88
ARCHIVE_URL = BASE_URL + 'archive'

newsdataapi/newsdataapi_client.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,8 @@ def __validate_parms(self,param:str,value:Union[list,int,str,bool])->dict:
4343
int_params = {'size'}
4444
string_params = {
4545
'q','qInTitle','country','category','language','domain','domainurl','excludedomain','timezone','page',
46-
'from_date','to_date','apikey','qInMeta','prioritydomain','timeframe','tag','sentiment','region','coin'
46+
'from_date','to_date','apikey','qInMeta','prioritydomain','timeframe','tag','sentiment','region','coin',
47+
'excludefield'
4748
}
4849

4950
if param in string_params:
@@ -152,7 +153,7 @@ def news_api(
152153
domainurl:Optional[Union[str, list]]=None, excludedomain:Optional[Union[str, list]]=None, timezone:Optional[str]=None, full_content:Optional[bool]=None,
153154
image:Optional[bool]=None, video:Optional[bool]=None, prioritydomain:Optional[str]=None, page:Optional[str]=None, scroll:Optional[bool]=False,
154155
max_result:Optional[int]=None, qInMeta:Optional[str]=None, tag:Optional[Union[str,list]]=None, sentiment:Optional[str]=None,
155-
region:Optional[Union[str,list]]=None
156+
region:Optional[Union[str,list]]=None,excludefield:Optional[Union[str,list]]=None
156157
)->dict:
157158
"""
158159
Sending GET request to the news api.
@@ -161,7 +162,7 @@ def news_api(
161162
params = {
162163
'apikey':self.apikey,'q':q,'qInTitle':qInTitle,'country':country,'category':category,'language':language,'domain':domain,'timeframe':str(timeframe) if timeframe else timeframe,
163164
'size':size,'domainurl':domainurl,'excludedomain':excludedomain,'timezone':timezone,'full_content':full_content,'image':image,'video':video,'prioritydomain':prioritydomain,
164-
'page':page,'qInMeta':qInMeta,'tag':tag, 'sentiment':sentiment, 'region':region
165+
'page':page,'qInMeta':qInMeta,'tag':tag, 'sentiment':sentiment, 'region':region,'excludefield':excludefield
165166
}
166167
URL_parameters = {}
167168
for key,value in params.items():
@@ -170,16 +171,16 @@ def news_api(
170171

171172
URL_parameters_encoded = urlencode(URL_parameters, quote_via=quote)
172173
if scroll == True:
173-
return self.__get_feeds_all(url=f'{constants.NEWS_URL}?{URL_parameters_encoded}',max_result=max_result)
174+
return self.__get_feeds_all(url=f'{constants.LATEST_URL}?{URL_parameters_encoded}',max_result=max_result)
174175
else:
175-
return self.__get_feeds(url=f'{constants.NEWS_URL}?{URL_parameters_encoded}')
176+
return self.__get_feeds(url=f'{constants.LATEST_URL}?{URL_parameters_encoded}')
176177

177178
def archive_api(
178179
self, q:Optional[str]=None, qInTitle:Optional[str]=None, country:Optional[Union[str, list]]=None, category:Optional[Union[str, list]]=None,
179180
language:Optional[Union[str, list]]=None, domain:Optional[Union[str, list]]=None, size:Optional[int]=None,domainurl:Optional[Union[str, list]]=None,
180181
excludedomain:Optional[Union[str, list]]=None, timezone:Optional[str]=None, full_content:Optional[bool]=None,image:Optional[bool]=None,
181182
video:Optional[bool]=None,prioritydomain:Optional[str]=None, page:Optional[str]=None, scroll:Optional[bool]=False, max_result:Optional[int]=None,
182-
from_date:Optional[str]=None, to_date:Optional[str]=None, qInMeta:Optional[str]=None, cryptofeeds:Optional[bool]=None
183+
from_date:Optional[str]=None, to_date:Optional[str]=None, qInMeta:Optional[str]=None, cryptofeeds:Optional[bool]=None,excludefield:Optional[Union[str,list]]=None
183184
) -> dict:
184185
"""
185186
Sending GET request to the archive api
@@ -188,7 +189,7 @@ def archive_api(
188189
params = {
189190
'q':q,'qInTitle':qInTitle,'country':country,'category':category,'language':language,'domain':domain,'size':size,'domainurl':domainurl,'excludedomain':excludedomain,
190191
'timezone':timezone,'full_content':full_content,'image':image,'video':video,'prioritydomain':prioritydomain,'page':page,'from_date':from_date,'to_date':to_date,
191-
'apikey':self.apikey,'qInMeta':qInMeta,'cryptofeeds':cryptofeeds
192+
'apikey':self.apikey,'qInMeta':qInMeta,'cryptofeeds':cryptofeeds,'excludefield':excludefield
192193
}
193194
URL_parameters = {}
194195
for key,value in params.items():
@@ -221,7 +222,7 @@ def crypto_api(
221222
timeframe:Optional[Union[int,str]]=None, size:Optional[int]=None,domainurl:Optional[Union[str, list]]=None, excludedomain:Optional[Union[str, list]]=None,
222223
timezone:Optional[str]=None, full_content:Optional[bool]=None,image:Optional[bool]=None, video:Optional[bool]=None, prioritydomain:Optional[str]=None,
223224
page:Optional[str]=None, scroll:Optional[bool]=False,max_result:Optional[int]=None, qInMeta:Optional[str]=None,tag:Optional[Union[str,list]]=None,
224-
sentiment:Optional[str]=None,coin:Optional[Union[str, list]]=None
225+
sentiment:Optional[str]=None,coin:Optional[Union[str, list]]=None,excludefield:Optional[Union[str,list]]=None
225226
)->dict:
226227
"""
227228
Sending GET request to the crypto api
@@ -231,7 +232,7 @@ def crypto_api(
231232
params = {
232233
'apikey':self.apikey,'q':q,'qInTitle':qInTitle,'language':language,'domain':domain,'size':size,'domainurl':domainurl,
233234
'excludedomain':excludedomain,'timezone':timezone,'full_content':full_content,'image':image,'video':video,'prioritydomain':prioritydomain,'page':page,
234-
'timeframe':str(timeframe) if timeframe else timeframe,'qInMeta':qInMeta,'tag':tag, 'sentiment':sentiment,'coin':coin
235+
'timeframe':str(timeframe) if timeframe else timeframe,'qInMeta':qInMeta,'tag':tag, 'sentiment':sentiment,'coin':coin,'excludefield':excludefield
235236
}
236237
URL_parameters = {}
237238
for key,value in params.items():

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
setup(
88
name='newsdataapi',
9-
version='0.1.15',
9+
version='0.1.16',
1010
packages=['newsdataapi'],
1111
description='Python library for newsdata client-API Call',
1212
long_description=long_description,

0 commit comments

Comments
 (0)