想透過Python程式抓取研究報告,
如以APPL為例子,抓取最新3則研究報告
底下是我的sample code
但目前都抓不到資料 (No results found.)
不知道是哪邊出了問題?
I want to fetch research reports using a Python program.
For example, using AAPL as a case, I want to fetch the latest 3 research reports.
Below is my sample code, but currently, I can't fetch any data (shows No results found.).
I don't know where the problem is.
import refinitiv.dataplatform as rdp
import json
import os
API_KEY = 'xxxxxxxx'
rdp.open_desktop_session(API_KEY)
symbol = 'AAPL.O'
def get_latest_reports(symbol, count=3):
try:
query = {
"query": {
"view": "research",
"filter": {
"symbol": symbol,
"language": "en",
"limit": count
}
}
}
response = rdp.search(query)
print("Query:", json.dumps(query, indent=2))
print("Response:", response)
if response is None or 'results' not in response:
print("No results found.")
return
reports = response['results']
for report in reports:
report_id = report['reportId']
pdf_url = report['pdfUrl']
pdf_response = rdp.get(pdf_url)
if pdf_response is None:
print(f"Failed to download report {report_id}")
continue
pdf_filename = f"{symbol}_{report_id}.pdf"
with open(pdf_filename, 'wb') as pdf_file:
pdf_file.write(pdf_response.content)
print(f"Downloaded {pdf_filename}")
except Exception as e:
print(f"Error: {e}")
get_latest_reports(symbol, count=3)
rdp.close_session()
Thanks.