Gizport
1 回答
0
Share (facebook)
68
view
全般

web上のデータを収集して表計算ソフトに入力する在宅ワークをしている...

web上のデータを収集して表計算ソフトに入力する在宅ワークをしているのですが…金貨250枚web上のデータより「社名」「電話番号」「住所」を抜粋して表計算ソフトに入力する在宅ワークをしています。使用している表計算ソフトは「OpenOfficeOrg」です。入力方法はセル内に「社名 TEL:電話番号 住所|(区切り線)社名 TEL:電話番号 住所|社名 TEL:電話番号 住所|…」と入力しなければなりません。「社名」「電話番号」「住所」はクリップボード支援ツール「クリップNOTE」を使用してワンクリックで行い、「TEL:」と「|(区切り線)」を手作業(タイピング)にて入力しています。これを「社名」をペースト→自動で全角スペース(空白)プラス「TEL:」が入力される→「電話番号」をペースト→自動で全角スペース(空白)が入力される→「住所」をペースト→自動で「|(区切り線)」が入力される→「社名」をペースト→自動で全角スペース…といった感じにはできないでしょうか?ちなみにweb上のデータからは「社名」「電話番号」「住所」を別々(一項目ずつ)にしかコピーしてクリップボードに保存できない状態です。よろしくお願いします。
Yahoo!知恵袋 4995日前
コメントする
お気に入り
1
質問者が選んだベストソリューション
VBScriptを作成しました。下記のコードをテキストファイルに貼り付けて、拡張子を「vbs」として保存してください。19行目の「strFileName_After = "C:write.txt"」に処理後のファイルを出力するパスを指定してください。変更をしない場合は、Cドライブの直下に「write.txt」というファイルを出力します。処理をするたびにファイルに追記するようになっています。追記ではなくて、上書きにしたい場合は32行目のSet objOutFile = objFileSys_After.OpenTextFile(strFileName_After,ForAppending,True)にある「ForAppending」を「ForWriting 」に変更してください。使い方クリップNOTEに溜めたデータを、何でもいいのでテキストファイルに貼り付けます。例)社名1番号1住所1社名2番号2住所2社名3番号3住所3そのファイルを「ファイル名.vbs」にドラッグ&ドロップしてください。コード内の19行目で指定したファイルに変換処理後の文字列が格納されます。エラーが出た場合は質問をリクエストして下さい。コードここから-----------------------------Option ExplicitOn Error Resume NextConst ForReading = 1 '読み込みConst ForWriting = 2 '書きこみ(上書きモード)Const ForAppending = 8 '書きこみ(追記モード)Dim objFileSys_BeforeDim objFileSys_AfterDim objInFileDim objOutFileDim intSepDim strScriptPathDim strFileName_BeforeDim strFileName_AfterDim strFilePathDim strRecordDim countDim i'編集後のファイルのパスを指定strFileName_After = "C:write.txt"'ドロップしたファイル名を取得strFileName_Before = Wscript.Arguments(0)'ファイルシステムオブジェクトの作成Set objFileSys_Before = CreateObject("Scripting.FileSystemObject")Set objFileSys_After = CreateObject("Scripting.FileSystemObject")'編集前ファイルのオープン(読み込みで開く)Set objInFile = objFileSys_Before.OpenTextFile(strFileName_Before,ForReading)'編集後ファイルのオープン(追記で開く)Set objOutFile = objFileSys_After.OpenTextFile(strFileName_After,ForAppending,True)'ファイルのオープンが成功のときはErr.Numberが0If Err.Number=0 Then 'ファイルの内容を全部読み終えるまでループ Do Until objInFile.AtEndOfStream = true count = count + 1 i = count Mod 3 Select Case i Case 1'社名 strRecord = strRecord & objInFile.ReadLine & " TEL:" Case 2'電話番具 strRecord = strRecord & objInFile.ReadLine & " " Case 0'住所 strRecord = strRecord & objInFile.ReadLine & "|" End Select Loop objOutFile.WriteLine strRecord 'ファイルのクローズ objInFile.Close objOutFile.Close'ファイルのオープンが失敗(ファイル無し)のときはErr.Numberが0以外Else Wscript.Echo "エラー"End if'オブジェクトの破棄Set objFileSys = NothingSet objInFile = Nothingコードここまで---------------------------------------------------------------------------------2つ程質問があります。1つめクリップNOTEにはコピーしたものを「一括貼り付け」する機能があるみたいですが、データ収集の際にクリップNOTEの中に溜まっていく順番は毎回、「社名」「電話番号」「住所」「社名」「電話番号」「住所」という規則になっていて、これ以外のデータ(従業員数や役員数等)は溜まっていない状態ですか?溜まっていくデータの順番に規則性があり、余計なデータ無いのであれば簡単なスクリプトで出来ますので、データの規則を教えてください。2つめデータを収集するwebサイトはいつも同じサイトですか?それともgoogleなどで企業名を検索してヒットしたサイト、つまりいつも同じとは限らないですか?いつも同じであれば、サイトを教えて頂ければhtmlを解析して出来るかもしれません。何かしら守秘義務にあたるものがあるかもしれないので、サイト名を公開してもいいという自信が無い限りは公開しないでください。
Yahoo!知恵袋 4989日前
シェア
 
コメントする
 

参考になったと評価
  このQ&Aは参考になりましたか?

Share (facebook)
その他の解決方法を知っていますか?
回答する
全般
170
Views
質問者が納得無料版FC2ではCGIを設置することはできません。http://help.fc2.com/web/qa/group38/136/@pagesなら可能です。http://www10.atwiki.jp/atpagesguide/pages/27.html
4987日前view170
全般
152
Views
質問者が納得基本的に無理。ノートPCに付いているD-subやHDMIは「出力用」であって「入力用」ではないから。
4997日前view152
全般
128
Views
質問者が納得ノートは後から拡張できないのでPrime Note Galleria MR6がゲーム性能の高いGX660がいいでしょう。ゲームパソコンを買う前に読んでおきましょう。http://gamer.fan-site.net/CPU、グラフィックの比較があり便利ですよ。ノート向けCPU/GPU性能比較http://gamer.fan-site.net/notecpu.htmlhttp://gamer.fan-site.net/notegpu.htmlただし同じ額だすならデスクトップがより快適ですよ
5015日前view128
全般
150
Views
質問者が納得http://www.dospara.co.jp/5shopping/detail_prime.php?tg=13&tc=143&ft=&mc=1636&sn=99&st=1&vr=10http://www.dospara.co.jp/5shopping/detail_prime.php?tg=3&tc=303&ft=&mc=1659&sn=102&st=1&vr=10この2つの比較で合ってます?これって 全く同...
5023日前view150
全般
87
Views
質問者が納得Let's Note Bに決まったのでは・・・?それはそれとして、評判(風評?)を気にしての購入でしたらどっちもどっちのような・・・耐久性を気にして、国内大手メーカを選ぶのでしたらソニーではなく、NECや富士通等にいくのがふつう?かもです。ソニータイマーという言葉が広まったくらい、ひどい時期よりはマシになった?かもしれませんが・・・とりあえず、こちらも・・・http://kakaku.com/item/K0000081041/「<お知らせ>本製品の一部において、外装変形の恐れがあります。詳しくはメーカーペー...
5035日前view87