How to get text inside a url?

2つの質問をしたいと思います。
①URLをクリックして、その中身をオープンして、テキストを取得したいですが、方法を教えていただきたい。
②ブラウザでオープンしたCSVのリンクのraw dataのスクレイピング方法を教えていただきたい。

具体的には以下となります。
税関サイト(外国為替相場(課税価格の換算) : 税関 Japan Customs )の中に、
テキスト”最新の外国為替相場のCSVデータは、[こちら]中にある。”の[こちら]をクリックして、
ハイパーリンク(日付によって変わっていますが):https://www.customs.go.jp/tetsuzuki/kawase/csv/240811-240817.csv
その中のcsv raw data の米ドル為替レート(USD 151.84)取得したい。
extract data tableを使用したが、うまくスクレイピングできませんでした。

ご教示いただけますと幸いです。

こんにちは

いくつか方法が考えられますが、以下2案いかがでしょうか?

案1
1.当該ページに遷移
2.GetTextで対象のテキストをすべて取得(抽出モード等チューニングが必要かもしれません)
3.以下の正規表現で必要な値を抽出

System.Text.RegularExpressions.Regex.Match(yourString,"(?<=ドル,USD,)[\d.]+").value

案2
1.リンクの属性から対象のURLを特定
2.ファイルをURLからダウンロードアクティビティを用いて、対象をダウンロード
3.ダウンロードしたファイルをReadTextFileアクティビティで読み込み
4.以下の正規表現で対象を抽出

System.Text.RegularExpressions.Regex.Match(yourString,"(?<=ドル,USD,)[\d.]+").value
2 Likes

ご回答ありがとうございます!
「リンクの属性から対象のURLを特定」についてまだ質問したいところがあります。

●ゲットしたいURL:
https://www.customs.go.jp/tetsuzuki/kawase/csv/240811-240817.csv

●get attributeというactivityを使って、ドロップダウンリストから出てきたurl要素:


以下ようなやり方で目標URLに遷移してみましたが、上手くいかないようです。
The image shows a "Go To URL" configuration screen with the URL "https://www.customs.go.jp/tetsuzuki/kawase/" entered in the input field. (Captioned by AI)

よろしくお願いいたします。

こんにちは

StudioWebですね

上記では正しいURLになっているかわかりませんので、一旦変数に格納して内容が正しいか確認ください。
またStudioWebではファイルをURLからダウンロードアクティビティが使えないと思いますのでHTTPリクエストアクティビティを使用してください。その際日本語が正しく扱えないと思いますので、正規表現式は以下の方が良いかと思います。

System.Text.RegularExpressions.Regex.Match(yourString,"(?<=,USD,)[\d.]+").value

以下実装&実行例です

1 Like

ご回答ありがとうございます、完璧です!
無事に解決しました。

Yoichiさん、こんにちは。重ねての質問で恐縮です。

本日の為替情報を取得するために、スクリーンショットに示した赤い枠のURLにアクセスする必要があると考えています。

① 本日の日付(2024年8月8日)から、Web上の日付範囲(8月4日~8月10日)に対応するURLを特定して、遷移する方法について教えていただけますでしょうか。

② PDFページでのスクレイピングは、ブラウザ上で完結可能でしょうか、それともダウンロードして処理した方が良いでしょうか。

よろしくお願いします。

こんにちは

内容がタイトルから離れていっていますので、別トピックを上げた方が良いかと思います。

① 本日の日付(2024年8月8日)から、Web上の日付範囲(8月4日~8月10日)に対応するURLを特定して、遷移する方法について教えていただけますでしょうか。

当該日付から、月や当該週の日曜日、土曜日の日付は動的に生成できると思いますので、それを用いてセレクターを指定すれば良いかと思います。

② PDFページでのスクレイピングは、ブラウザ上で完結可能でしょうか、それともダウンロードして処理した方が良いでしょうか。

試してみないとわからないですね。StudioWebですと制約が多いので一筋縄ではいかないかもしれません。

1 Like