投稿

ラベル(bat)が付いた投稿を表示しています

短縮URLを展開するbatファイル

Gemini作 注意:Shift-JISで保存すること。普通にUTF-8で保存すると文字化けが生じる。 chcp 65001 > nul を使ってUTF-8で保存すると、日本語処理で問題が生じる可能性がある。 @echo off REM Use Shift-JIS / ANSI encoding for this bat file :START_LOOP echo. echo ========================================================== set /p short_url="展開したい短縮URLを入力してください: " echo ========================================================== echo. REM Check for empty input if "%short_url%"=="" (     echo 入力がありませんでした。再度入力してください。     goto START_LOOP ) echo 短縮URL: %short_url% echo リダイレクトの追跡を開始します... REM Core command: -L (follow redirects), -v (verbose output), -s (silent/no progress), -o nul (don't download content) REM Filter output for Location: and Host: headers curl -L -v -s -o nul "%short_url%" 2>&1 | findstr /i "Location: Host:" echo. echo 処理が完了しました。 :ASK_CONTINUE set /p continue_prompt="続けて別のURLを展開しますか? (y/n): " REM y or Y to continue if /i "%continue_prompt%"=="y" goto START_LOO...

マストドンのアーカイブをcsv形式にするコード

  mastodon-japan.netサーバーが閉鎖されるとのことなので、アーカイブをダウンロードした。その中に、outbox.jsonがあった。これはテキストエディタで開くには重すぎる。ただし、Windowsの「メモ帳」なら開ける。このoutbox.jsonから重要なデータを抽出してcsv形式にすることにした。jqというものを利用した。 https://jqlang.org/  このコードについては全く分からないので、Geminiにコードを作成してもらった。  to_csv.jq というファイルと to_csv.bat というファイルを作成して同じディレクトリーに置き、to_csv.bat を実行すると mastodon_data.csv というファイルが同じディレクトリーに作られる。  画像などの添付ファイルについては、アーカイブのzipファイルの media_attachments フォルダーの中のかなり深い階層に収納されていて、その位置は outbox.json に記載されているので、その位置も抽出することにした。投稿のidと日時とactorとコンテンツとinReplyToと画像などの添付ファイルの位置を抽出したのだが、idとactorはURL形式だった。  また、コンテンツに「"」や「,」が含まれている場合が心配だったが、Geminiによると、「ご使用になった jq のフィルタには、CSVの標準ルールに従ってこれらを自動で処理する仕組みが組み込まれていますので、 基本的に列がずれる心配はありません。 」とのことだった。最終行の @csv 演算子 のおかげらしい。 この @csv 演算子 が非常に重要で、以下の標準的なCSVルールに従ってデータを安全にエンコードします。 カンマ ( , ): (Geminiの嘘だと思ったが正しかった。「 データフィールド内にカンマが含まれている場合 」に限らず、コンテンツ全体が""で囲まれているから,のままで大丈夫) データフィールド内にカンマが含まれている場合、そのフィールド全体は 二重引用符 ( " ) で括られます。 例: あ,い,う → "あ,い,う" 二重引用符 ( " ): (Geminiの嘘。コンテンツ内の"は...