• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:RubyでCSVファイルの1行目を削除したい )

RubyでCSVファイルの1行目を削除する方法

notnotの回答

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4846/10257)
回答No.2

>:in `block in <main>': undefined local variable or method `try' for main:Object (NameError) タイプミスじゃないですか? ミスが見つかるまでもう一度よく見直しましょう。 前回の質問の回答にに書いたかもしれませんが、 もっとやさしいプログラムを書くことから始めた方が良いように思います。

kann3589
質問者

お礼

いつもありがとうございます。 いじくりすぎた物のエラーを提示していました。 hoge.rb:19:in `block in <main>': undefined method `try' for main:Object (No MethodError) どうやらtryが定義されていない?のようでエラーが出ます。 今更、def tryの前にCSV.foreach内で登場している為、だと思って見た所、後ろにしてみた所、上手く実行する事が出来ました。 まだrubyが理解できていないので暇が出来たら簡単なプログラムを練習して見たいと思います。 今回もありがとうございました。

関連するQ&A

  • Ruby Selenium 要素の待機

    Rubyの初心者でSeleniumを使ってスクレイピングを趣味としてしているものです。 ブラウザはchromeです。 スクレイピングをしたいページで404が数回続き、やっと読み込めるサイトがあるので、404エラーで止まってしまうのである要素が無ければもう一度やり直す、そのようになったら初めからやり直してみる形にしたいと思って色々と調べ試行錯誤をしています。 https://www.qoosky.net/references/58/ を参考に require 'selenium-webdriver' driver = Selenium::WebDriver.for :chrome #chrome のdriverを設定 driver.navigate.to "http://google.com" wait = Selenium::WebDriver::Wait.new(:timeout => 10) # seconds begin element = wait.until { driver.find_element(:id => "hoge") } ensure driver.quit driver.navigate.to "http://google.com" end id、hogeが無ければもう一度読み直すような形でやってみたのですが全く意味をなしていないようです。 何卒どうかご教授、よろしくお願いします。

    • ベストアンサー
    • Ruby
  • Ruby Selenium リンクの取得方法

    こんばんは。 Ruby初心者ですが、現在、Selenium Webdriver、chromeにはまり、スクレイピングのような事をしています。 そんな中で困っている事があるのですが、 とあるサイトの画像URLを取得、テキストに追記で書き出ししようと色々と調べたのですが全く分からず困っています。 <div class="hoge"> <img src="http://hoge" alt=""> </div> htmlはこんなようでxpathは/hoge/imgと仮定します。 open("hoge.txt", "a"){|f| output = driver.find_element(:xpath, '/hoge/img') f.puts "#{output.text}" } のように書いてみたもののテキストに改行しか出力されない状態です。 何卒どうかご教授、よろしくお願いします。

    • ベストアンサー
    • Ruby
  • Firefox Portableをrubyで操作し

    次の環境でrubyにseleniumをインストールしてFirefoxの自動操作を行っています。  OS: Windows10  ブラウザ: Firefox 42  ruby : 2.1.7 Firefoxの代わりに、Firefox Portable (バージョンはできれば42。それ以外でも可)を操作したいのですが、どのようにrubyに記述すればよいでしょうか。 Firefoxのアドオンを利用したいので、毎回同じプロファイルを使用するため、いまのところ次のように記載しています。 ============================================== require 'selenium-webdriver' default_profile = Selenium::WebDriver::Firefox::Profile.from_name "default" default_profile.native_events = true driver = Selenium::WebDriver.for(:firefox, :profile => default_profile) driver.get "http://www.yahoo.co.jp/" ============================================== これに何か情報を書き加えれば、Firefox Portableを起動できると考えているのですが、ちょっとわからないので、教えてください。

    • ベストアンサー
    • Ruby
  • Ruby Seleniumで文章の保存

    こんばんは。 当方Ruby初心者です。 現在、Selenium Webdriverでスクレイピングをしており、 その中でputs driver.page_sourceコマンドを使用しています。 その際、putsコマンドで出力されたソースをPC内にファイルとして保存する事は可能 でしょうか?また、可能な場合、どのようにして実行すれば良いのでしょうか。 拙い質問ですが、どうかご教授の程、よろしくお願いします。

  • Excel2021 VBAからPython制御

    VBAからPythonでブラウザの制御方法についてアドバイスをお願いします。 xlwings_udfsで以下のPython関数を呼んでブラウザを起動させた後に 更に別のPython関数でそのブラウザに対して実行掛けたいのですが ブラウザが閉じてしまいます。 @xw.func def Init(): #ドライバーインポート from selenium import webdriver from selenium.webdriver.common.by import By #ブラウザー起動 driver = webdriver.Chrome() return 0 ブラウザを閉じずに別のPython関数に継承する方法は、ないのでしょうか? 以下の様な感じです。何らかの方法でdriver変数を継承する必要があるかと思うのですがそれも上手く行きません。 msg2 = xlwings_udfs.Init() msg2 = xlwings_udfs.Proc1() msg2 = xlwings_udfs.Proc2() 色々と調べたのですが見つかりませんでした。 御存じの方が居られましたらアドバイスの程、 宜しくお願い申し上げます。

  • エクセルのスクレイピングでエラー

    エクセルVBAでスクレイピングをしたいのですが、エラーが出てしまいます。わかる方がいましたらご教授下さい。 ■環境 Windows10(64bit) ■インストールしたドライバ類 SeleniumBasic-2.0.9.0.exe ChromeDriver 91.0.4472.19 chromedriver_win32.zip ■チェックを入れた参照設定 Visual Basic For Application Microsoft Excel 16.0 Object Library OLE Automation Microsoft Office 16.0 Object Library Microsoft Internet Control Microsoft HTML Object Library Selenium Type Librrary ■プロシージャ Sub test()   Dim Driver As New Selenium.WebDriver Driver.Start "chrome", "https://www.yahoo.co.jp/" Driver.Get "/" Driver.Close Set Driver = Nothing End Sub ■エラー内容 3行目「Driver.Start "chrome", "https://www.yahoo.co.jp/"」の所で 「実行時エラー33」が表示される

  • LIFeBOOK UH

    seleniumをインストールすることができません。 yahooやgoogleに載っているどの方法をやってみても driver=webdriver.Chrome() のときにエラーが出ます。 対処方法を教えてください。 ※OKWAVEより補足:「富士通FMV」についての質問です。

  • インストールしたgemがrequireできない

    色々模索したのですが、解決策がみつかりませんでしたので、質問させていただきます。 何卒、宜しくお願いします。 現在CentOSにて、rubyをいじっており、gemでselenium-webdriverをインストールしたのですが、 別のファイル(sample.rb)からrequireしても `require': cannot load such file -- selenium-webdriver (LoadError)となってしまいます。 試しに別のファイルをrequireしてみたらできたので、gemの問題だと思っています。 以下のようにsample.rbに書きました。 require 'rubygems' require 'selenium-webdriver' ・ ・ ・ また、gem listにもはいっているため何が原因なのかよくわかりません。 ご参考までにgemの環境を以下に書きます。 RubyGems Environment: - RUBYGEMS VERSION: 1.4.2 - RUBY VERSION: 1.9.3 (2012-02-16 patchlevel 125) [i686-linux] - INSTALLATION DIRECTORY: /usr/local/lib/ruby/gems/1.9.1 - RUBY EXECUTABLE: /usr/local/bin/ruby - EXECUTABLE DIRECTORY: /usr/local/bin - RUBYGEMS PLATFORMS: - ruby - x86-linux - GEM PATHS: - /usr/local/lib/ruby/gems/1.9.1 - /root/.gem/ruby/1.9.1 - GEM CONFIGURATION: - :update_sources => true - :verbose => true - :benchmark => false - :backtrace => false - :bulk_threshold => 1000 - REMOTE SOURCES: - http://rubygems.org/ 1点気になりますのが、gemのパスです。 下記URLを参考にしました。 http://d.hatena.ne.jp/amacou/20090206/1233929888 $which gem /usr/local/bin/gem $sudo which gem /usr/bin/gem となっているため、パスを変えようと思いましたが、 サイトの通りではパスが変わりませんでした。 よくわからないということもありまして、/usr/bin/gemを削除してみましたがもちろんrequireできません。 ここからどのようにしたらよいかどうかご教授いただけますと幸いです。 以上、宜しくお願い申し上げます。

    • ベストアンサー
    • Ruby
  • VBScriptでCSVファイルのデータ取得

    VBScriptで、ADOを使ってCSVファイルのデータを読み込みたいのですが、 うまういきません。 CSVファイル(Data.csv)の内容は下記です。 item1,item2 AA1,BB1 AA2,BB2 AA3,BB3 プログラムの内容は、下記です。 'ADOオブジェクトを作成 Set objADO = CreateObject("ADODB.Connection") 'ADOを使いCSVファイルを扱う準備(オープン)を行う objADO.Open "Driver={Microsoft Text Driver (*.txt; *.csv)};" & _ "DBQ=C:\Documents and Settings\houjyou-n\デスクトップ;" & _ "ReadOnly=1" 'SQLを実行し、当該タスクのデータを抽出します Set objRS = objADO.Execute("select * from Data.csv where item1 = 'AA3'") If Not objRS.Eof Then If objRS("item2") = "BB3" Then Flg = True End If End If 'レコードセットをクローズobjRS.Close objRS.Close 'ADOオブジェクトをクローズ objADO.Close 実行すると、「オブジェクト'Data.csv'が見つかりませんでした。オブジェクトが存在していること、名前やパス名が正しいことを確認してください。」というエラーが出ます。 パスもファイル名も間違っていないのですが、何がいけないのでしょうか。 手がかりになることがあれば、何でも教えていただければ幸いです。

  • Selenium Type Library参照設定

    Selenium Type Libraryを参照設定すると「DLL 読み込み時のエラーです」 https://lil.la/archives/3436 のページに記された手順でSeleniumBasicやChrome Driverをインストールし、VBEから「Selenium Type Library」を参照設定すると「DLL 読み込み時のエラーです」と表示されます。同じことを別のPCで試したところ、そちらではエラーが発生せず、実際にChromeからのWebスクレイピングに成功しました。 Excel自体の再インストールが必要なのでしょうか?