You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从TradingView爬取印美本周经济日历数据并加载至DataFrame

爬取TradingView印度区经济日历数据并加载到DataFrame

依赖准备

先安装所需的Python工具库:

pip install requests beautifulsoup4 pandas python-dateutil

实现代码

以下代码可完成指定条件的数据爬取,并将结果转换为DataFrame:

import requests
from bs4 import BeautifulSoup
import pandas as pd
from datetime import datetime, timedelta
from dateutil.parser import parse

# 配置请求头,模拟浏览器访问
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
}

# 计算本周的时间范围(周一至周日)
today = datetime.today()
start_of_week = today - timedelta(days=today.weekday())
end_of_week = start_of_week + timedelta(days=6)

# 请求目标页面
url = "https://in.tradingview.com/economic-calendar/"
response = requests.get(url, headers=headers)
response.raise_for_status()  # 捕获请求异常

# 解析页面内容
soup = BeautifulSoup(response.text, 'html.parser')
calendar_table = soup.find('table', class_='table-Ng65_0er')

# 提取表格表头
table_headers = [th.get_text(strip=True) for th in calendar_table.find('thead').find_all('th')]

# 遍历表格行,筛选符合条件的数据
filtered_rows = []
for row in calendar_table.find('tbody').find_all('tr'):
    cols = row.find_all('td')
    if len(cols) < len(table_headers):
        continue
    
    # 提取地区标识和事件日期
    region = cols[1].get_text(strip=True)
    event_date_str = cols[0].get_text(strip=True).split('\n')[0]
    try:
        event_date = parse(event_date_str).date()
    except:
        continue
    
    # 应用筛选规则:仅保留印度(IN)/美国(US)、本周内的事件
    if region in ['IN', 'US'] and start_of_week.date() <= event_date <= end_of_week.date():
        row_content = [col.get_text(strip=True) for col in cols]
        filtered_rows.append(row_content)

# 转换为DataFrame
result_df = pd.DataFrame(filtered_rows, columns=table_headers)
print(result_df.head())

注意事项

  • 反爬限制:TradingView有反爬机制,频繁请求可能被封IP,建议添加请求间隔(如time.sleep(2))。
  • 动态加载问题:如果静态解析拿不到完整数据,说明页面是动态渲染的,需改用selenium模拟浏览器加载后再解析。
  • 页面结构变更:网站可能调整HTML元素的类名或结构,若代码失效,需重新检查页面元素的定位标识。

内容的提问来源于stack exchange,提问作者Rohit

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 16:20:43