summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDanglewood <85772166+deeleeramone@users.noreply.github.com>2024-02-25 00:59:46 -0800
committerGitHub <noreply@github.com>2024-02-25 08:59:46 +0000
commiteea2fb55b2fd2085dca18a1b84c457feca66f22c (patch)
treea7dcc7b15b8e93c55e963a280b8f1db2d7e41805
parentd5cfb57dab162a985ac9b76e4617409fe2a54ddb (diff)
[BugFix] Fix Company News (#6111)
* fix company news * update tests * multiple symbols for polygon * don't include pageSize in Benzinga querystring, fixed as 100 * remove extra space * black * unused imports * make benzinga test cassette smaller * missing params * clear empty strings --------- Co-authored-by: Igor Radovanovic <74266147+IgorWounds@users.noreply.github.com>
-rw-r--r--openbb_platform/core/openbb_core/provider/standard_models/company_news.py38
-rw-r--r--openbb_platform/extensions/news/integration/test_news_api.py6
-rw-r--r--openbb_platform/extensions/news/integration/test_news_python.py6
-rw-r--r--openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py8
-rw-r--r--openbb_platform/providers/benzinga/tests/record/http/test_benzinga_fetchers/test_benzinga_company_news_fetcher.yaml2597
-rw-r--r--openbb_platform/providers/benzinga/tests/test_benzinga_fetchers.py2
-rw-r--r--openbb_platform/providers/fmp/openbb_fmp/models/company_news.py44
-rw-r--r--openbb_platform/providers/fmp/tests/record/http/test_fmp_fetchers/test_fmp_company_news_fetcher.yaml7175
-rw-r--r--openbb_platform/providers/intrinio/openbb_intrinio/models/company_news.py8
-rw-r--r--openbb_platform/providers/intrinio/tests/record/http/test_intrinio_fetchers/test_intrinio_company_news_fetcher.yaml7653
-rw-r--r--openbb_platform/providers/polygon/openbb_polygon/models/company_news.py102
-rw-r--r--openbb_platform/providers/polygon/tests/record/http/test_polygon_fetchers/test_polygon_company_news_fetcher.yaml15070
-rw-r--r--openbb_platform/providers/tiingo/openbb_tiingo/models/company_news.py59
-rw-r--r--openbb_platform/providers/tiingo/openbb_tiingo/models/world_news.py52
-rw-r--r--openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_company_news_fetcher.yaml16087
-rw-r--r--openbb_platform/providers/tiingo/tests/record/http/test_tiingo_fetchers/test_tiingo_world_news_fetcher.yaml213
-rw-r--r--openbb_platform/providers/yfinance/openbb_yfinance/models/company_news.py70
-rw-r--r--openbb_platform/providers/yfinance/tests/record/http/test_yfinance_fetchers/test_y_finance_company_news_fetcher.yaml206
18 files changed, 47415 insertions, 1981 deletions
diff --git a/openbb_platform/core/openbb_core/provider/standard_models/company_news.py b/openbb_platform/core/openbb_core/provider/standard_models/company_news.py
index 60bfaf8890d..cae56e2d081 100644
--- a/openbb_platform/core/openbb_core/provider/standard_models/company_news.py
+++ b/openbb_platform/core/openbb_core/provider/standard_models/company_news.py
@@ -4,7 +4,7 @@ from datetime import (
date as dateType,
datetime,
)
-from typing import Optional
+from typing import Dict, List, Optional
from dateutil.relativedelta import relativedelta
from pydantic import Field, NonNegativeInt, field_validator
@@ -20,26 +20,26 @@ from openbb_core.provider.utils.descriptions import (
class CompanyNewsQueryParams(QueryParams):
"""Company news Query."""
- symbol: str = Field(
- min_length=1,
+ symbol: Optional[str] = Field(
+ default=None,
description=QUERY_DESCRIPTIONS.get("symbol", "")
+ " This endpoint will accept multiple symbols separated by commas.",
)
- limit: Optional[NonNegativeInt] = Field(
- default=20, description=QUERY_DESCRIPTIONS.get("limit", "")
- )
start_date: Optional[dateType] = Field(
default=None, description=QUERY_DESCRIPTIONS.get("start_date", "")
)
end_date: Optional[dateType] = Field(
default=None, description=QUERY_DESCRIPTIONS.get("end_date", "")
)
+ limit: Optional[NonNegativeInt] = Field(
+ default=2500, description=QUERY_DESCRIPTIONS.get("limit", "")
+ )
@field_validator("symbol", mode="before")
@classmethod
- def symbols_validate(cls, v: str) -> str: # pylint: disable=E0213
+ def symbols_validate(cls, v):
"""Validate the symbols."""
- return v.upper()
+ return v.upper() if v else None
@field_validator("start_date", mode="before")
@classmethod
@@ -47,7 +47,7 @@ class CompanyNewsQueryParams(QueryParams):
"""Populate start date if empty."""
if not v:
now = datetime.now().date()
- v = now - relativedelta(years=1)
+ v = now - relativedelta(weeks=16)
return v
@field_validator("end_date", mode="before")
@@ -62,16 +62,16 @@ class CompanyNewsQueryParams(QueryParams):
class CompanyNewsData(Data):
"""Company News Data."""
- symbols: str = Field(
- min_length=1,
- description=DATA_DESCRIPTIONS.get("symbols", "")
- + " Here it is a separated list of symbols.",
- )
date: datetime = Field(
description=DATA_DESCRIPTIONS.get("date", "")
- + " Here it is the date of the news."
+ + " Here it is the published date of the article."
+ )
+ title: str = Field(description="Title of the article.")
+ text: Optional[str] = Field(default=None, description="Text/body of the article.")
+ images: Optional[List[Dict[str, str]]] = Field(
+ default=None, description="Images associated with the article."
+ )
+ url: str = Field(description="URL to the article.")
+ symbols: Optional[str] = Field(
+ default=None, description="Symbols associated with the article."
)
- title: str = Field(description="Title of the news.")
- image: Optional[str] = Field(default=None, description="Image URL of the news.")
- text: Optional[str] = Field(default=None, description="Text/body of the news.")
- url: str = Field(description="URL of the news.")
diff --git a/openbb_platform/extensions/news/integration/test_news_api.py b/openbb_platform/extensions/news/integration/test_news_api.py
index 279eb1cd985..2b685a34857 100644
--- a/openbb_platform/extensions/news/integration/test_news_api.py
+++ b/openbb_platform/extensions/news/integration/test_news_api.py
@@ -128,13 +128,12 @@ def test_news_world(params, headers):
),
(
{
- "published_utc": "2023-01-01",
"order": "desc",
"provider": "polygon",
"symbol": "AAPL",
"limit": 20,
- "start_date": None,
- "end_date": None,
+ "start_date": "2024-01-10",
+ "end_date": "2024-01-10",
}
),
(
@@ -173,6 +172,7 @@ def test_news_world(params, headers):
"source": "bloomberg.com",
"start_date": None,
"end_date": None,
+ "offset": None,
}
),
(
diff --git a/openbb_platform/extensions/news/integration/test_news_python.py b/openbb_platform/extensions/news/integration/test_news_python.py
index 9c96b8d5a08..38bbbbfded1 100644
--- a/openbb_platform/extensions/news/integration/test_news_python.py
+++ b/openbb_platform/extensions/news/integration/test_news_python.py
@@ -113,13 +113,12 @@ def test_news_world(params, obb):
),
(
{
- "published_utc": "2024-01-10",
"order": "desc",
"provider": "polygon",
"symbol": "AAPL",
"limit": 20,
- "start_date": None,
- "end_date": None,
+ "start_date": "2024-01-10",
+ "end_date": "2024-01-10",
}
),
(
@@ -158,6 +157,7 @@ def test_news_world(params, obb):
"source": "bloomberg.com",
"start_date": None,
"end_date": None,
+ "offset": None,
}
),
(
diff --git a/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py b/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py
index 3b36a061a0a..eb7723da3dd 100644
--- a/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py
+++ b/openbb_platform/providers/benzinga/openbb_benzinga/models/company_news.py
@@ -153,12 +153,14 @@ class BenzingaCompanyNewsFetcher(
base_url = "https://api.benzinga.com/api/v2/news"
query.sort = f"{query.sort}:{query.order}" if query.sort and query.order else ""
- querystring = get_querystring(query.model_dump(by_alias=True), ["order"])
+ querystring = get_querystring(
+ query.model_dump(by_alias=True), ["order", "pageSize"]
+ )
pages = math.ceil(query.limit / 100) if query.limit else 1
-
+ page_size = 100 if query.limit and query.limit > 100 else query.limit
urls = [
- f"{base_url}?{querystring}&page={page}&token={token}"
+ f"{base_url}?{querystring}&page={page}&pageSize={page_size}&token={token}"
for page in range(pages)
]
diff --git a/openbb_platform/providers/benzinga/tests/record/http/test_benzinga_fetchers/test_benzinga_company_news_fetcher.yaml b/openbb_platform/providers/benzinga/tests/record/http/test_benzinga_fetchers/test_benzinga_company_news_fetcher.yaml
index 11ef84fa2a7..79b0acb6016 100644
--- a/openbb_platform/providers/benzinga/tests/record/http/test_benzinga_fetchers/test_benzinga_company_news_fetcher.yaml
+++ b/openbb_platform/providers/benzinga/tests/record/http/test_benzinga_fetchers/test_benzinga_company_news_fetcher.yaml
@@ -2,916 +2,655 @@ interactions:
- request:
body: null
headers:
+ Accept:
+ - application/json
Accept-Encoding:
- gzip, deflate
Connection:
- keep-alive
- accept:
- - application/json
method: GET
uri: https://api.benzinga.com/api/v2/news?displayOutput=full&page=0&pageSize=20&sort=created%3Adesc&tickers=AAPL%2CMSFT&token=MOCK_TOKEN
response:
body:
- string: "[{\"id\":34920696,\"author\":\"Benzinga Insights\",\"created\":\"Tue,
- 26 Sep 2023 13:35:17 -0400\",\"updated\":\"Tue, 26 Sep 2023 13:35:18 -0400\",\"title\":\"10
- Information Technology Stocks With Whale Alerts In Today's Session\",\"teaser\":\"
- \",\"body\":\"<p>This whale alert can help traders discover the next big trading
- opportunities.</p>\\n<p>Whales are entities with large sums of money and we
- track their transactions here at Benzinga on our options activity scanner.</p>\\n<p>Traders
- will search for circumstances when the market estimation of an option diverges
- heavily from its normal worth. High amounts of trading activity could push
- option prices to exaggerated or underestimated levels. </p>\\n<p>Below are
- some instances of options activity happening in the Information Technology
- sector: <table>\\n<thead>\\n<tr>\\n<th><strong>Symbol</strong></th>\\n<th><strong>PUT/CALL</strong></th>\\n<th><strong>Trade
- Type</strong></th>\\n<th><strong>Sentiment</strong></th>\\n<th><strong>Exp.
- Date</strong></th>\\n<th><strong>Strike Price</strong></th>\\n<th><strong>Total
- Trade Price</strong></th>\\n<th><strong>Open Interest</strong></th>\\n<th><strong>Volume</strong></th>\\n</tr>\\n</thead>\\n<tbody>\\n<tr>\\n<td>AAPL</td>\\n<td>PUT</td>\\n<td>SWEEP</td>\\n<td>BEARISH</td>\\n<td>09/29/23</td>\\n<td>$172.50</td>\\n<td>$42.7K</td>\\n<td>19.8K</td>\\n<td>73.0K</td>\\n</tr>\\n<tr>\\n<td>NVDA</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BEARISH</td>\\n<td>09/29/23</td>\\n<td>$430.00</td>\\n<td>$39.0K</td>\\n<td>9.3K</td>\\n<td>35.2K</td>\\n</tr>\\n<tr>\\n<td>MSFT</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BULLISH</td>\\n<td>09/29/23</td>\\n<td>$315.00</td>\\n<td>$26.9K</td>\\n<td>1.3K</td>\\n<td>14.2K</td>\\n</tr>\\n<tr>\\n<td>U</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BULLISH</td>\\n<td>09/29/23</td>\\n<td>$31.00</td>\\n<td>$70.9K</td>\\n<td>197</td>\\n<td>2.3K</td>\\n</tr>\\n<tr>\\n<td>NET</td>\\n<td>PUT</td>\\n<td>SWEEP</td>\\n<td>BEARISH</td>\\n<td>10/06/23</td>\\n<td>$56.00</td>\\n<td>$34.6K</td>\\n<td>353</td>\\n<td>2.2K</td>\\n</tr>\\n<tr>\\n<td>ORCL</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BULLISH</td>\\n<td>12/15/23</td>\\n<td>$105.00</td>\\n<td>$25.2K</td>\\n<td>1.4K</td>\\n<td>647</td>\\n</tr>\\n<tr>\\n<td>DBX</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BEARISH</td>\\n<td>06/21/24</td>\\n<td>$30.00</td>\\n<td>$71.5K</td>\\n<td>8.5K</td>\\n<td>420</td>\\n</tr>\\n<tr>\\n<td>AMD</td>\\n<td>CALL</td>\\n<td>SWEEP</td>\\n<td>BEARISH</td>\\n<td>06/21/24</td>\\n<td>$110.00</td>\\n<td>$280.2K</td>\\n<td>5.6K</td>\\n<td>282</td>\\n</tr>\\n<tr>\\n<td>MU</td>\\n<td>PUT</td>\\n<td>TRADE</td>\\n<td>BEARISH</td>\\n<td>12/15/23</td>\\n<td>$70.00</td>\\n<td>$52.4K</td>\\n<td>3.8K</td>\\n<td>144</td>\\n</tr>\\n<tr>\\n<td>NOW</td>\\n<td>PUT</td>\\n<td>SWEEP</td>\\n<td>BULLISH</td>\\n<td>05/17/24</td>\\n<td>$510.00</td>\\n<td>$211.7K</td>\\n<td>2</td>\\n<td>117</td>\\n</tr>\\n</tbody>\\n</table></p>\\n<h2>Explanation</h2>\\n<p>These
- bullet-by-bullet explanations have been constructed using the accompanying
- table. </p>\\n<p>\u2022 For <strong>AAPL</strong> (NASDAQ:<a class=\\\"ticker\\\"
- href=\\\"https://www.benzinga.com/stock/AAPL#NASDAQ\\\">AAPL</a>), we notice
- a <strong>put</strong> option <strong>sweep</strong> that happens to be <strong>bearish</strong>,
- expiring in 3 day(s) on <strong>September 29, 2023</strong>. This event was
- a transfer of <strong>285</strong> contract(s) at a <strong>$172.50</strong>
- strike. This particular put needed to be split into 5 different trades to
- become filled. The total cost received by the writing party (or parties) was
- <strong>$42.7K</strong>, with a price of <strong>$150.0</strong> per contract.
- There were <strong>19834</strong> open contracts at this strike prior to today,
- and today <strong>73042</strong> contract(s) were bought and sold. </p>\\n<p>\u2022
- \ Regarding <strong>NVDA</strong> (NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/NVDA#NASDAQ\\\">NVDA</a>),
- we observe a <strong>call</strong> option <strong>sweep</strong> with <strong>bearish</strong>
- sentiment. It expires in 3 day(s) on <strong>September 29, 2023</strong>.
- Parties traded <strong>100</strong> contract(s) at a <strong>$430.00</strong>
- strike. This particular call needed to be split into 7 different trades to
- become filled. The total cost received by the writing party (or parties) was
- <strong>$39.0K</strong>, with a price of <strong>$390.0</strong> per contract.
- There were <strong>9322</strong> open contracts at this strike prior to today,
- and today <strong>35219</strong> contract(s) were bought and sold. </p>\\n<p>\u2022
- \ For <strong>MSFT</strong> (NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/MSFT#NASDAQ\\\">MSFT</a>),
- we notice a <strong>call</strong> option <strong>sweep</strong> that happens
- to be <strong>bullish</strong>, expiring in 3 day(s) on <strong>September
- 29, 2023</strong>. This event was a transfer of <strong>116</strong> contract(s)
- at a <strong>$315.00</strong> strike. This particular call needed to be split
- into 8 different trades to become filled. The total cost received by the writing
- party (or parties) was <strong>$26.9K</strong>, with a price of <strong>$232.0</strong>
- per contract. There were <strong>1343</strong> open contracts at this strike
- prior to today, and today <strong>14289</strong> contract(s) were bought and
- sold. </p>\\n<p>\u2022 For <strong>U</strong> (NYSE:<a class=\\\"ticker\\\"
- href=\\\"https://www.benzinga.com/stock/U#NYSE\\\">U</a>), we notice a <strong>call</strong>
- option <strong>sweep</strong> that happens to be <strong>bullish</strong>,
- expiring in 3 day(s) on <strong>September 29, 2023</strong>. This event was
- a transfer of <strong>1365</strong> contract(s) at a <strong>$31.00</strong>
- strike. This particular call needed to be split into 24 different trades to
- become filled. The total cost received by the writing party (or parties) was
- <strong>$70.9K</strong>, with a price of <strong>$52.0</strong> per contract.
- There were <strong>197</strong> open contracts at this strike prior to today,
- and today <strong>2365</strong> contract(s) were bought and sold. </p>\\n<p>\u2022
- \ Regarding <strong>NET</strong> (NYSE:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/NET#NYSE\\\">NET</a>),
- we observe a <strong>put</strong> option <strong>sweep</strong> with <strong>bearish</strong>
- sentiment. It expires in 10 day(s) on <strong>October 6, 2023</strong>. Parties
- traded <strong>200</strong> contract(s) at a <strong>$56.00</strong> strike.
- This particular put needed to be split into 11 different trades to become
- filled. The total cost received by the writing party (or parties) was <strong>$34.6K</strong>,
- with a price of <strong>$173.0</strong> per contract. There were <strong>353</strong>
- open contracts at this strike prior to today, and today <strong>2259</strong>
- contract(s) were bought and sold. </p>\\n<p>\u2022 For <strong>ORCL</strong>
- (NYSE:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/ORCL#NYSE\\\">ORCL</a>),
- we notice a <strong>call</strong> option <strong>sweep</strong> that happens
- to be <strong>bullish</strong>, expiring in 80 day(s) on <strong>December
- 15, 2023</strong>. This event was a transfer of <strong>40</strong> contract(s)
- at a <strong>$105.00</strong> strike. This particular call needed to be split
- into 6 different trades to become filled. The total cost received by the writing
- party (or parties) was <strong>$25.2K</strong>, with a price of <strong>$630.0</strong>
- per contract. There were <strong>1461</strong> open contracts at this strike
- prior to today, and today <strong>647</strong> contract(s) were bought and
- sold. </p>\\n<p>\u2022 Regarding <strong>DBX</strong> (NASDAQ:<a class=\\\"ticker\\\"
- href=\\\"https://www.benzinga.com/stock/DBX#NASDAQ\\\">DBX</a>), we observe
- a <strong>call</strong> option <strong>sweep</strong> with <strong>bearish</strong>
- sentiment. It expires in 269 day(s) on <strong>June 21, 2024</strong>. Parties
- traded <strong>368</strong> contract(s) at a <strong>$30.00</strong> strike.
- This particular call needed to be split into 19 different trades to become
- filled. The total cost received by the writing party (or parties) was <strong>$71.5K</strong>,
- with a price of <strong>$195.0</strong> per contract. There were <strong>8592</strong>
- open contracts at this strike prior to today, and today <strong>420</strong>
- contract(s) were bought and sold. </p>\\n<p>\u2022 For <strong>AMD</strong>
- (NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/AMD#NASDAQ\\\">AMD</a>),
- we notice a <strong>call</strong> option <strong>sweep</strong> that happens
- to be <strong>bearish</strong>, expiring in 269 day(s) on <strong>June 21,
- 2024</strong>. This event was a transfer of <strong>250</strong> contract(s)
- at a <strong>$110.00</strong> strike. This particular call needed to be split
- into 5 different trades to become filled. The total cost received by the writing
- party (or parties) was <strong>$280.2K</strong>, with a price of <strong>$1125.0</strong>
- per contract. There were <strong>5666</strong> open contracts at this strike
- prior to today, and today <strong>282</strong> contract(s) were bought and
- sold. </p>\\n<p>\u2022 Regarding <strong>MU</strong> (NASDAQ:<a class=\\\"ticker\\\"
- href=\\\"https://www.benzinga.com/stock/MU#NASDAQ\\\">MU</a>), we observe
- a <strong>put</strong> option <strong>trade</strong> with <strong>bearish</strong>
- sentiment. It expires in 80 day(s) on <strong>December 15, 2023</strong>.
- Parties traded <strong>99</strong> contract(s) at a <strong>$70.00</strong>
- strike. The total cost received by the writing party (or parties) was <strong>$52.4K</strong>,
- with a price of <strong>$530.0</strong> per contract. There were <strong>3888</strong>
- open contracts at this strike prior to today, and today <strong>144</strong>
- contract(s) were bought and sold. </p>\\n<p>\u2022 Regarding <strong>NOW</strong>
- (NYSE:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/NOW#NYSE\\\">NOW</a>),
- we observe a <strong>put</strong> option <strong>sweep</strong> with <strong>bullish</strong>
- sentiment. It expires in 234 day(s) on <strong>May 17, 2024</strong>. Parties
- traded <strong>52</strong> contract(s) at a <strong>$510.00</strong> strike.
- This particular put needed to be split into 13 different trades to become
- filled. The total cost received by the writing party (or parties) was <strong>$211.7K</strong>,
- with a price of <strong>$4073.0</strong> per contract. There were <strong>2</strong>
- open contracts at this strike prior to today, and today <strong>117</strong>
- contract(s) were bought and sold. </p>\\n<p><strong>Options Alert Terminology</strong><br
- />\\n - <strong>Call Contracts:</strong> The right to buy shares as indicated
- in the contract.<br />\\n - <strong>Put Contracts:</strong> The right to sell
- shares as indicated in the contract.<br />\\n - <strong>Expiration Date:</strong>
- When the contract expires. One must act on the contract by this date if one
- wants to use it.<br />\\n - <strong>Premium/Option Price:</strong> The price
- of the contract. </p>\\n<p>For more information, visit our <em><a href=\\\"https://pro.benzinga.com/blog/how-to-understand-option-alerts/\\\">Guide
- to Understanding Options Alerts</a></em> or read <a href=\\\"https://www.benzinga.com/markets/options\\\">more
- about unusual options activity</a>. </p>\\n<p>This article was generated
- by Benzinga's automated content engine and reviewed by an editor.</p>\",\"url\":\"https://www.benzinga.com/markets/options/23/09/34920696/10-information-technology-stocks-with-whale-alerts-in-todays-session\",\"image\":[{\"size\":\"large\",\"url\":\"https://cdn.benzinga.com/files/imagecache/2048x1536xUP/images/story/2023/options_image_2.jpeg\"},{\"size\":\"thumb\",\"url\":\"https://cdn.benzinga.com/files/imagecache/250x187xUP/images/story/2023/options_image_2.jpeg\"},{\"size\":\"small\",\"url\":\"https://cdn.benzinga.com/files/imagecache/1024x768xUP/images/story/2023/options_image_2.jpeg\"}],\"channels\":[{\"name\":\"Options\"}],\"stocks\":[{\"name\":\"AAPL\"},{\"name\":\"AMD\"},{\"name\":\"DBX\"},{\"name\":\"MSFT\"},{\"name\":\"MU\"},{\"name\":\"NET\"},{\"name\":\"NOW\"},{\"name\":\"NVDA\"},{\"name\":\"ORCL\"},{\"name\":\"U\"}],\"tags\":[{\"name\":\"BZI-AUOA\"}]},{\"id\":34914178,\"author\":\"Anusuya
- Lahiri\",\"created\":\"Tue, 26 Sep 2023 13:24:43 -0400\",\"updated\":\"Tue,
- 26 Sep 2023 13:24:44 -0400\",\"title\":\"Google Podcasts To Sunset in 2024,
- YouTube Music Rises As Podcasting Hub\",\"teaser\":\"Alphabet Inc\_(NASDAQ:
- GOOG) (NASDAQ: GOOGL)\_Google\_has disclosed its plans to shut down the Google
- Podcasts app later in 2024, redirecting its users to the YouTube Music platform.\_\",\"body\":\"<p><strong>Alphabet
- Inc</strong>&nbsp;(NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/GOOG#NASDAQ\\\">GOOG</a>)
- (NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/GOOGL#NASDAQ\\\">GOOGL</a>)&nbsp;<strong>Google</strong>&nbsp;has
- disclosed its plans to shut down the Google Podcasts app later in 2024, redirecting
- its users to the YouTube Music platform.&nbsp;</p>\\r\\n\\r\\n<p>This move
- is part of Google&#39;s strategy to consolidate its podcast offerings and
- enhance the podcast experience on YouTube Music by focusing on discovery,
- community, and seamless switching between audio and video podcasts.</p>\\r\\n\\r\\n<p><strong><em>Also
- Read:&nbsp;</em></strong><a class=\\\"editor-rtfLink\\\" href=\\\"https://www.benzinga.com/news/23/07/33093135/spotify-expands-video-offering-takes-on-youtube-and-tiktok-with-full-length-music-videos-report\\\"
- style=\\\"color:#4a6ee0; background:transparent; margin-top:0pt; margin-bottom:0pt\\\"
- target=\\\"_blank\\\"><em>Spotify Expands Video Offering, Takes On YouTube
- And TikTok With Full-Length Music Videos: Report</em></a></p>\\r\\n\\r\\n<p>Google&#39;s
- decision is motivated by user behavior, with only 4% of weekly podcast users
- in the U.S. favoring Google Podcasts, compared to 23% who frequently use YouTube
- for podcasts, TechCrunch&nbsp;<a class=\\\"editor-rtfLink\\\" href=\\\"https://techcrunch.com/2023/09/26/google-podcasts-to-shut-down-in-2024-with-listeners-migrated-to-youtube-music/\\\"
- style=\\\"color:#4a6ee0; background:transparent; margin-top:0pt; margin-bottom:0pt\\\"
- target=\\\"_blank\\\">reports</a>.</p>\\r\\n\\r\\n<p>Meanwhile,<strong>&nbsp;Spotify
- Technology</strong>&nbsp;(NYSE:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/SPOT#NYSE\\\">SPOT</a>)
- has&nbsp;<a class=\\\"editor-rtfLink\\\" href=\\\"https://www.benzinga.com/news/23/09/34886447/elon-musk-wows-spotifys-latest-podcast-translation-feature-developed-with-openais-help\\\"
- style=\\\"color:#4a6ee0; background:transparent; margin-top:0pt; margin-bottom:0pt\\\"
- target=\\\"_blank\\\">initiated a trial phase</a>&nbsp;for an AI-powered feature
- to translate and replicate podcast hosts&#39; voices into multiple languages.&nbsp;</p>\\r\\n\\r\\n<p>It
- looks to provide a seamless listening experience in Spanish, French, and German
- by recreating the original speakers&#39; tone, rhythm, and pace.</p>\\r\\n\\r\\n<p>To
- facilitate the transition, Google will provide users with a migration tool,
- enabling them to transfer their podcast subscriptions to YouTube Music.&nbsp;</p>\\r\\n\\r\\n<p>Additionally,
- Google will support the option to download an OPML file of their show subscriptions
- from Google Podcasts, allowing users to import their subscriptions to other
- podcast apps if they prefer not to move to YouTube Music.&nbsp;</p>\\r\\n\\r\\n<p>Google
- aims to position YouTube Music as a strong competitor to platforms like Spotify,&nbsp;<strong>Apple
- Inc</strong>&nbsp;(NASDAQ:<a class=\\\"ticker\\\" href=\\\"https://www.benzinga.com/stock/AAPL#NASDAQ\\\">AAPL</a>)
- Apple Music, and&nbsp;<strong>Amazon.Com Inc</strong>&nbsp;(NASDAQ:<a class=\\\"ticker\\\"
- href=\\\"https://www.benzinga.com/stock/AMZN#NASDAQ\\\">AMZN</a>) Amazon Music.&nbsp;</p>\\r\\n\\r\\n<p>While
- Google has successfully shifted users away from older products in the past,
- transitioning podcast users presents a unique challenge, as many already turn
- to YouTube for podcast content.</p>\\r\\n\\r\\n<p><strong>Price Action:</strong>&nbsp;GOOG
- shares traded lower by 2.12% at $129.37 on the last check Tuesday.</p>\\r\\n\\r\\n<p><strong><em>Disclaimer:</em></strong><em>&nbsp;This
- content was partially produced with the help of AI tools and was reviewed
- and published by Benzinga editors.</em></p>\\r\\n \",\"url\":\"https://www.benzinga.com/news/23/09/3491417