質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

1回答

1158閲覧

rubyを使ったWEBスクレイピングの問題

kokokouki

総合スコア6

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

1クリップ

投稿2020/08/03 17:22

編集2020/08/03 22:42

あるWEBページから要素を取得し、取得した情報をハッシュに保存しそれを配列にしたものを出力する問題です。
制約としてはrequire "net/http"を使う。
nokogiriなどのgemは利用しない。

現在、以下のようなコードでhtmlを丸ごと取得することまではできたのですが最終行のp doc.elements['(取得したい要素)'].attributesによって特定の要素(テーブルタグの中身など)取り出してハッシュに保存する方法がわからず
途方に暮れています。

require "net/http"
require 'uri'
require "rexml/document"
require 'open-uri'

uri = URI.parse("(url)")
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme === "https"

headers = { "Content-Type" => "application/json" }
response = http.get(uri.path, headers)

response.code # status code
body = response.body # response body

doc = REXML::Document.new(open(body).read)

p doc.elements['(取得したい要素)'].attributes

詳しい方いらっしゃいましたらご教示ください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kokokouki

2020/08/04 00:37

ありがとうございます。 実現できそうなので試してみます。
guest

回答1

0

自己解決

goufさんのアドバイスを参考にxpathを使うことで解決できました。ありがとうございます。

投稿2020/08/19 05:53

kokokouki

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問