question

Upvotes
Accepted
1 0 0 1

“AttributeError: module 'refinitiv.dataplatform.content.search' has no attribute 'Definition'”

Error : response = search.Definition(view=asset_view, top=max, filter=filter_str, select=select_str).get_data(). It says that “AttributeError: module 'refinitiv.dataplatform.content.search' has no attribute 'Definition'”

Code was based on Examples-> Commodities-> Shipping and Shipping assets and utilities shipping.ipynb.

Hello Team client is using this code:

import pandas as pd
import math
import refinitiv.dataplatform as rd
import plotly.express as px
from refinitiv.dataplatform.content import search

select = "RIC, AssetName, Latitude, Longitude, OriginPort, DestinationPort, LocationDestination, LocationETA, LocationDraft, HullType"
port = 'Cristobal'

def discover_vessels_arriving_at_port(port_name='', select_str="RIC, AssetName, Latitude, Longitude",
asset_view=search.SearchViews.VesselPhysicalAssets, max=50):
filter_str = f"DestinationPort eq '{port_name}'"
response = search.Definition(view=asset_view, top=max,
filter=filter_str, select=select_str).get_data()

vessels_to_port_df = response.data.df
vessels_to_port_df.dropna(subset=['LocationETA'], inplace=True)
vessels_to_port_df['ETA_Date'] = vessels_to_port_df['LocationETA'].apply(lambda x: x.split('T')[0])

return vessels_to_port_df


x = discover_vessels_arriving_at_port(port, select, max=500)


this code in codebook "asset_view=search.Views.VESSEL_PHYSICAL_ASSETS"


what i need to run as"asset_view=search.SearchViews.VesselPhysicalAssets"


the function discover_vessels need to run

workspace#technologyrdp-apipython apicodebookrefinitiv-data-libraries
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

· Write an Answer
Upvotes
Accepted
7.2k 23 3 6

Hi @marceugene.belen, may I ask which vessels CodeBook examples you are referring to?
Is it "__Examples__/01. Data Retrieval and Discovery/01.01. Refinitiv Data Library/Access__Search.ipynb"?

Please note that the module 'refinitiv.dataplatform.content.search' has indeed no attribute 'Definition'; you can instead use lines such as, for example:


import refinitiv.data as rd
rd.open_session()

rd.discovery.search(
    view = rd.discovery.Views.EQUITY_QUOTES,
    top = 10,
    filter = "( SearchAllCategoryv2 eq 'Equities' and (AvgVol5D gt 2000000 and ExchangeName xeq 'NYSE Consolidated'))",
    select = "DTSubjectName,ExchangeName,RIC,IssueISIN,Gics,AssetState,BusinessEntity,PI,SearchAllCategoryv3,SearchAllCategoryv2,SearchAllCategory,TickerSymbol,CUSIP,CinCUSIP,AvgVol5D,RCSCurrencyLeaf,RCSTRBC2012Leaf,ExDividendDate,AvgVol30D,AvgVol90D,MktCapCompanyUsd,Pe,OpProfitUsd",
    order_by = "AvgVol5D desc")
icon clock
10 |1500

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Hi Jonathan! This is the path that Marc is referring to __Examples__/06. Commodities Research/06.03. Shipping/Shipping_Assets_Quickstart.ipynb

Hi @marceugene.belen, I ran the CodeBook example with no issue... I'm not sure I understand which part you might be stuck on in that example:


1716988915662.png

1716988915662.png (161.7 KiB)
Hello @jonathan.legrand thank you for the response. Will have a call with client and advise him to check this post thread. Client may add more information regarding his error. Thanks for the help.
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.