search_term = URI.encode(title) search_url = "https://www.youtube.com/results?search_query=#{search_term}" puts search_url doc = Nokogiri::HTML(open(search_url)) #写真のようにリンク付きタイトルの部分 elements = doc.xpath("//h3['yt-lockup-title']/a") elements.each do |a| #code は /watch?v=KM4Xe6Dlp0Y&list=PLMpKNooZZUQsudyHWAxb7UfiKQtDzdmdM #こんな感じの文字列 code = a.attributes['href'].value #そこから /watch?v= と & に囲まれた KM4Xe6Dlp0Y を取得したい puts code.match(/\/watch\?v\=(.+)\&/)[1] end
コードのコメント欄のように
/watch?v=KM4Xe6Dlp0Y&list=PLMpKNooZZUQsudyHWAxb7UfiKQtDzdmdM
という文字列から /watch?v= と & にかこまれた KM4Xe6Dlp0Y
というのを抽出したいです。
だから puts code.match(/\/watch\?v\=(.+)\&/)[1]
こうやったのですが出てくるものは/watch?v=KM4Xe6Dlp0Y& というように watch などがひっついてきます。これをのけたいのですが、どういう正規表現を使えばいいのでしょうか?
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/10 07:02