{"id":29932846,"url":"https://github.com/refiaa/x-videodownloader","last_synced_at":"2025-08-02T18:12:42.598Z","repository":{"id":305477960,"uuid":"1022837385","full_name":"refiaa/X-VideoDownloader","owner":"refiaa","description":"自分用、ツイッター動画自動ダウンロードツール","archived":false,"fork":false,"pushed_at":"2025-07-20T09:28:10.000Z","size":23,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-07-20T11:25:34.651Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/refiaa.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-20T00:08:27.000Z","updated_at":"2025-07-20T09:30:59.000Z","dependencies_parsed_at":"2025-07-20T11:36:47.794Z","dependency_job_id":null,"html_url":"https://github.com/refiaa/X-VideoDownloader","commit_stats":null,"previous_names":["refiaa/x-videodownloader"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/refiaa/X-VideoDownloader","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refiaa%2FX-VideoDownloader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refiaa%2FX-VideoDownloader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refiaa%2FX-VideoDownloader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refiaa%2FX-VideoDownloader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/refiaa","download_url":"https://codeload.github.com/refiaa/X-VideoDownloader/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/refiaa%2FX-VideoDownloader/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268431653,"owners_count":24249413,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-02T02:00:12.353Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-08-02T18:12:40.585Z","updated_at":"2025-08-02T18:12:42.589Z","avatar_url":"https://github.com/refiaa.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# X(Twitter) Video Downloader\n\n\u003e [!WARNING]\n\u003e このスクリプトの実行により発生するあらゆる問題に対して作者は責任を負いません。X(Twitter)の利用規約を遵守し、自己責任でご利用ください。\n\n特定のX(Twitter)アカウントの動画を自動ダウンロードするスクリプトです。\n\n## ファイル構造\n\n```\n│  .env\n│  .gitignore\n│  LICENSE\n│  README.md\n│  \n├─output\n│      .gitkeep\n│\n├─src\n│      downloader.py\n│      getId.py\n│      __init__.py\n│      x.com_cookies.txt\n│\n└─videos\n        .gitkeep\n```\n\n## 必要なもの\n\n- Python 3.7+\n- Chrome Browser\n- ffmpeg\n- [Get cookies.txt LOCALLY](https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc?hl=ja)\n\n## セットアップ\n\n### 1. 環境変数設定\n\n`.env`ファイルを作成し以下を設定：\n\n```env\n# Twitter認証（自動ログイン用）\nTWITTER_USERNAME=your_username\nTWITTER_PASSWORD=your_password\n\n# ダウンロード対象\nTARGET_USERNAME=target_account_id\n\n# ディレクトリ設定\nOUTPUT_DIR=output\nVIDEOS_DIR=videos\n\n# スクレイピング設定\nTIMEOUT=30\nSCROLL_PAUSE_TIME=3.0\nMAX_SCROLLS=300\nHEADLESS=False\nWAIT_AFTER_LOAD=10.0\nSCROLL_INCREMENT=800\nMAX_CONSECUTIVE_NO_NEW_CONTENT=15\n```\n\n### 3. クッキーファイル設定\n\n1. [Get cookies.txt LOCALLY](https://chromewebstore.google.com/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc?hl=ja)をインストール\n2. X.comでログイン後、拡張機能でクッキーをエクスポート\n3. `x.com_cookies.txt`として保存\n\n## 実行手順\n\n### 1. メディアURL取得\n\n- `getId.py`を実行\n- 対象アカウントのメディア付き投稿URLを収集\n- `output/`に`{username}_media_posts_full_{timestamp}.csv`が生成される\n\n### 2. 動画ダウンロード\n\n- `Downloader.py`を実行\n- 収集したURLから動画をダウンロード\n- `videos/{username}/`に`{post_id}.mp4`として保存される\n\n## トラブルシューティング\n\n### よくあるエラー\n\n**ログインエラー**\n- 環境変数の認証情報を確認\n- 2FA有効アカウントは手動ログインを使用\n\n**レート制限エラー**\n```\nWARNING: [twitter] Rate-limit exceeded; falling back to syndication endpoint\nWARNING: [twitter] 13240971234234124: Not all metadata or media is available via syndication endpoint\nERROR: [twitter] 13240971234234124: No video could be found in this tweet\n```\n- Twitterのレート制限\n- 時間をおいて再実行\n\n**ffmpegエラー**\n- ffmpegがPATHに追加されているか確認\n- [ffmpeg公式サイト](https://ffmpeg.org/download.html)からダウンロード\n\n## 注意事項\n\n- 利用規約を遵守してください\n- 過度なリクエストは避けてください\n- 個人利用の範囲内でご使用ください\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefiaa%2Fx-videodownloader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frefiaa%2Fx-videodownloader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frefiaa%2Fx-videodownloader/lists"}