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

如何为Pandas DataFrame的每一行添加爬取迭代器i?

解决方法

你只需要在每次读取到单页的DataFrame后,新增一列来记录当前迭代器i的值,再把这个带标记的DataFrame加入到data列表中即可。具体修改如下:

修改后的完整代码

import requests
import pandas as pd

data = []
for i in range(0,24):
    for j in range(1,15):
        if i < 9:
            URL = 'https://www.weltfussball.de/spielerliste/bundesliga-200' + str(i) + '-' + '200' + str(i+1)
            URL_ = URL + '/nach-name/'+ str(j) + '/'
            response = requests.get(URL_, headers={'User-Agent': 'Mozilla/5.0'})
            # 读取单页数据并暂存
            single_df = pd.read_html(response.text)[1]
            # 新增列标记当前迭代批次的i值
            single_df['batch_i'] = i
            # 将带标记的DataFrame加入列表
            data.append(single_df)
df = pd.concat(data).reset_index(drop=True)

关键改动说明

  • 新增single_df变量暂存单页爬取的DataFrame,方便后续修改操作
  • 通过single_df['batch_i'] = i为当前页所有行添加批次标记列(列名可根据需求修改为更语义化的名称,比如season_cycle)
  • 最后reset_index时添加drop=True,避免保留拼接前的旧索引列(可选,根据你的数据处理需求调整)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.26 06:39:18