0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

6日目

Posted at

Dataiku Docs Converter プロジェクト概要

1. ディレクトリ構成

dataiku-docs-converter/
├── Dockerfile          # Dockerコンテナ設定
├── requirements.txt    # Pythonパッケージ依存関係
├── .env               # 環境変数(APIキー等)
├── src/               # ソースコード
│   ├── main.py        # メインスクリプト
│   ├── scraper.py     # スクレイピング機能
│   ├── markdown_converter.py  # Markdown変換機能
│   └── link_fixer.py  # リンク修正機能
└── data/              # 出力データ
    ├── scraped_pages/ # スクレイピング結果
    ├── markdown_files/ # 変換後のMDファイル
    └── *.log          # 実行ログ

2. ワークフロー

3. 実行結果

  • スクレイピング:

    • 収集したURL数: 1,222件
    • 出力: data/scraped_pages/pages_info_[timestamp].json
  • Markdown変換:

    • 処理したファイル数: 1,222件
    • 成功率: 100%
    • 出力: data/markdown_files/*.md
  • リンク修正:

    • 処理したファイル数: 1,222件
    • 成功率: 100%
    • 出力: 既存MDファイルの更新

4. 使用ツールの解説

スクレイピング(scraper.py)

  • 使用ライブラリ:
    • requests: HTTPリクエスト
    • BeautifulSoup4: HTML解析
  • 主な機能:
    • 再帰的なページ探索
    • メニュー構造の解析
    • JSON形式でのメタデータ保存

Markdown変換(markdown_converter.py)

  • 使用ライブラリ:
    • markitdown: HTML→Markdown変換
    • Azure OpenAI: テキスト処理
  • 主な機能:
    • HTML内容の構造化抽出
    • Markdown形式への変換
    • メタデータの付加

リンク修正(link_fixer.py)

  • 使用ライブラリ:
    • urllib.parse: URL処理
    • re: 正規表現処理
  • 主な機能:
    • 相対パスの検出
    • 絶対URLへの変換
    • ファイル内容の更新

実行環境(Dockerfile)

  • Python 3.10ベース
  • 必要なパッケージの自動インストール
  • ボリュームマウントによるデータ永続化
  • 環境変数による設定管理
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?