原文地址:https://itxiaozhang.com/auto-hmdb-exogenous-metabolite-food-source
如果您需要远程电脑维修或者编程开发,请加我微信咨询。

1. 需求分析

代谢物的来源信息对于科研和营养分析非常重要。现有数据库(HMDB)中,外源性代谢物来源信息分散在网页上,手动整理效率低、容易出错。因此,需要一个工具能批量抓取代谢物的外源性来源信息,生成结构化、可分析的 CSV 数据。

2. 工具功能概述

  • 抓取范围:只关注 HMDB 中 Disposition → Exogenous,即代谢物外源性来源。

  • 输出数据:CSV 文件,每条记录包含 HMDB ID、食物名称、FooDB 编号;找不到或出错标 None

  • 自动化与鲁棒性

    • 多线程并发抓取,提高效率
    • 随机 User-Agent、防封锁
    • 自动重试和错误处理
    • 每处理若干条自动保存,保证数据安全
  • 用途:支持食物-代谢物关联分析、营养研究及数据库构建。

3. 程序结构

核心程序通过 Python 实现,主要功能包括:

  • 加载 HMDB ID 列表
  • 请求对应网页
  • 提取代谢物外源性食物来源信息
  • 生成 CSV 文件,每条记录包括 HMDB ID、食物名称及对应编号
  • 错误处理和日志记录,确保每个 ID 都有处理结果

示意代码如下:

1
2
3
4
5
6
7
8
9
def get_metabolite_data(hmdb_id):
    """
    根据 HMDB ID 获取外源性食物来源信息
    输出字典包含:
      - 'HMDB ID'
      - 'Source(Exogenous)' (食物名称和编号,找不到时为 'None')
    """
    data = {'HMDB ID': hmdb_id, 'Source(Exogenous)': '...'}
    return data

视频版本