Excelのシートに貼り付けてある画像のハイパーリンクをPythonで読み取る

前提

Excelのシートに多数の画像ファイルが貼り付けてあり、それぞれの画像にWebのハイパーリンクが設定されています。

実現したいこと

PythonでExcelファイルを開き、ループを回してそれぞれの画像に設定されたハイパーリンクのurlを取得したいです。
できればどの画像のハイパーリンクなのかを特定するため、画像が貼り付けてあるセルのアドレス(行列)も併せて取得したいです。
あるいは、指定したアドレス(行列)のセルに貼り付けてある画像のハイパーリンクを取得できればそれでも良いです。
VBAではなく、Pythonで実行したい理由は、ハイパーリンクのアドレスを読み取った後、Webスクレイピングをしたいからです。
画像が貼り付けてあるアドレスを知りたいのは、スクレイピングで取得した情報を画像の横のセルに書き込みたいからです。

発生している問題・エラーメッセージ

エラーメッセージ

該当のソースコード

ソースコード

試したこと

openpyxlを使ってできないかと思い、ネットで検索したり、openpyxlの公式ドキュメントを見てみましたが、方法を見つけられませんでした。
VBAで画像のハイパーリンクを読み取って、任意のセルにurlを書き込んだ後、pythonでそのセルの値(url)を読み込んでスクレイピングをするという2段階処理にすればできるかと思いますが、できればpythonだけで処理をしたいです。

補足情報(FW/ツールのバージョンなど)

Windows10
Office365
python 3.10.2
openpyxl 3.0.10

コメントを投稿

0 コメント