対話が必要なWebページからリンクを抽出する

対話が必要なWebページからリンクを抽出する

LinuxシェルのWebページからリンクを抽出する方法を理解しようとしています。ここでのリンクは、githubの「アセット」などのWebページのボタンをクリックした後にのみ表示されます。ダウンロードページを使用すると、wget資産へのリンクは含まれません。

wget -O /dev/stdout "https://github.com/yuzu-emu/yuzu-mainline/releases/latest" 2>/dev/null | grep ".AppImage"

返品リンクはありません。より一般的には、一部のWebページには、対話後にのみ表示される要素が含まれています。これらの要素を表示するHTMLをどのように取得できますか?

ベストアンサー1

あなたのため特定たとえば、github APIを使用する方がWebをスクラップするよりも優れています。たとえば、

curl https://api.github.com/repos/yuzu-emu/yuzu-mainline/releases/tags/mainline-0-1180

jqこれにより、(またはJSONサポートを好む言語)解析可能な投稿情報(資産リストを含む)を含むJSONブログが返されます。


より一般的には、ページがロードされた後にJavascriptを介して動的に更新されるページのコンテンツにアクセスしようとすると、シェルは簡単にこれを行うことはできません。

通常、次のようなものが必要です。劇作家またはセレンブラウザをプログラムで制御するためのこれらのツールを使用するには、通常より強力な言語(Javascript、Pythonなど)を使用する必要があります。

おすすめ記事