実現したいこと
〇やりたいこと
複数の企業webサイトから、ニュースリリースを収集し、excelに転記する
ノーコードツールとしてPADを使い始めたものの、ノーコードの範囲外?なフローな気がしており、知見不足な自分では構築が難航しています。
webで調べた結果、「For Eachアクションを使用して、取得したデータと既存のデータを比較」、「Ifアクションを使用して、重複するデータを除外」という動作が必要なのかな、という感じですが、実装に至る具体的なフロー構築のイメージがつかめていません。
発生している問題・分からないこと
〇手段
Power Automate Desktopを使ってwebスクレイピング、データは既存のexcelファイルに出力する
〇困っていること
数日に1回のタイミングでフローを実行したいが、すでに取得済みの記事を重複して取得しないように修正したい。
webスクレイピングでデータを取得し、データテーブルに格納したもののうち、既にexcelに存在するデータについてはexcelへ転記の対象外としたい。
〇これまで試したこと
データテーブルの重複削除、統合を試してみたが、うまくいっていない。
〇代替案について
既存のexcelに対して、webスクレイピングしたデータを一度全部転記し、そこから重複するデータをexcel側の関数やofficeスクリプトを使って消す、という流れも検討しているが、膨大なデータを一度excelへ転記するという流れでよいのか、またexcel側は記事が日々たまっていくため、多くのデータに対して関数を使って処理すると、動作が重くなってしまうことを懸念しています。
〇フロー
①ブラウザを起動
②記事取得したい企業webサイトAを開く
③企業webサイトAから情報を取得、データテーブルに格納
④記事取得したい企業webサイトBを開く
⑤企業webサイトBから情報を取得、データテーブルに格納
・
・(上記②~⑤)を企業webサイトC、D、E、F・・・と繰り返す(35件前後を想定)
・
⑥既存のデータが記載されているexcelファイルを開く
⑦開いたexcelファイルの最終行、列を取得(今後のフローでデータを書き込むため)
⑧開いたexcelファイルから、既に取得済みの記事をexcelデータテーブルとして読み込む
⑨上記②~⑤で取得し、データテーブルに格納したデータと、⑦でexcelデータテーブルに取り込んだデータの値(例:3列目、4列目)を比較する。つまりwebから取得したデータを格納しているデータテーブルと、excelから取得したexcelデータテーブルの値を比較する
⑩excelデータテーブルに記載のある値と一致するデータを特定
⑪値がい位置したデータ(⑩)はスキップし、そうでないデータ(新規記事)について、上記⑥で開いたexcelファイルの⑦で取得した最終行、列の箇所からデータを書き込む
⑫excelファイルを上書きして保存
終了
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
webで調べた結果、「For Eachアクションを使用して、取得したデータと既存のデータを比較」、「Ifアクションを使用して、重複するデータを除外」という動作が必要なのかな、という感じですが、実装に至る具体的なフロー構築のイメージがつかめていません。
補足
特になし
あなたの回答
tips
プレビュー