UWSCを使って特定の語句のリンクを抽出する方法

このQ&Aのポイント
  • UWSCとは、パソコンの操作を自動化できるツールです。
  • 指定したURLから特定の語句のリンクを抽出する方法を知りたい。
  • 重複したリンクを取得せずに抽出する方法を教えてください。
回答を見る
  • ベストアンサー

UWSCに詳しい方助けてください><

いつもお世話になります。 昨日、UWSCというものを知って、パソコンの操作を自動化できることに感動しました。 プログラミングはほとんどしたことがないど素人なのです^^; 指定したURLから特定の語句のリンクを抽出したく、なんとか抽出することはできたのですが、 重複してしまうリンクがでてきてしまいました。 重複したリンクは取得せず、抽出していく方法がわからず困っております。 重複したリンクをその都度削除、もしくは、エクセルにデータを落として、エクセルの重複削除を自動でやる、といったことでもいいのですが、そのスクリプトをどうやって書いたらいいのか全くわかりません。。。 下記が特定の語句のリンクを取得するスクリプトです。 URL = INPUT("URLを入力してください", "「指定URL」") TOTAL_LINKS = "" IE = CREATEOLEOBJ("InternetExplorer.Application") IE.visible = True IE.navigate(URL) REPEAT SLEEP(0.1) UNTIL !IE.BUSY AND IE.READYSTATE = 4 LINK_AMOUNT = IE.Document.links.length FOR KAISU = 0 TO (LINK_AMOUNT - 1) IFB POS("特定の語句", IE.document.links[KAISU].href) > 0 TOTAL_LINKS = TOTAL_LINKS + IE.document.links[KAISU].href + "<#CR>" ENDIF NEXT EXEC("NOTEPAD") SENDSTR(GETID("無題 - メモ帳"), TOTAL_LINKS) お力をお貸しくださいm(_ _)m よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • liners0
  • ベストアンサー率60% (3/5)
回答No.1

単に条件を追加するだけですね。それでも下記なら一行も増えませんよ。 IFB POS("特定の語句", IE.document.links[KAISU].href) > 0 and pos("<#cr>" + IE.document.links[KAISU].href + "<#cr>", "<#cr>" + TOTAL_LINKS) = 0

peguule
質問者

お礼

すごい!!! 自分のイメージしていた通りのことができました!! ありがとうございます!! 助かりましたm(_ _)m

関連するQ&A

  • javascript をhtmlページで使用する方法を教えてください。

    <form name=\"addr\"> リンク先-> <select name=\"list\" onChange=\"chg_url()\"> <option value=\"http://www.yahoo.co.jp\">yahoo1</option> <option value=\"http://www.yahoo.co.jp\">yahoo2</option> <option value=\"http://www.yahoo.co.jp\">yahoo3</option> </select> <a href=\"Dest\" target=_blank> リンク </a> </form> <script language=\"javascript\"> <!-- pos = 5555; for(num=0;num<document.links.length;num++) { if (document.links[num].href.indexOf(\"Dest\") != -1) { pos = num; num = 5000; } } function chg_url() { if (pos!=5555) { sel = document.addr.list.selectedIndex; document.links[pos].href = document.addr.list[sel].value; } } chg_url(); //--> </script> のスクリプトを同じページに何個も利用したいのですが、どうしたらうまくいきますか? 同じページにこのスクリプトを設置すると、全部同じページにリンクしてしまいます。java初心者なので、ぜひ教えてください。お願いします。 あと、「java」の質問回答の方に間違えて載せてしまいました。すみませんでした(>_<)

  • リンクに触れると効果音がでる

    ブログでリンクに触れると効果音でるタグですが 下記のリンク部分には何処を指定するのでしょうか? <HTML> <HEAD> <TITLE>リンクに触れると音が鳴る</TITLE> <SCRIPT LANGUAGE="JavaScript"> <!-- //リンク音を鳴らす function runSound() { document.all.link_sound.src='サウンドファイルのURL'; } // --> </SCRIPT> <BGSOUND src="#" id="link_sound" loop=1 autostart="true"> </HEAD> <BODY> <A href="リンク1のURL" onMouseOver="runSound()">リンク1</A><P> <A href="リンク2のURL" onMouseOver="runSound()">リンク2</A><P> <A href="リンク3のURL" onMouseOver="runSound()">リンク3</A><P> <A href="リンク4のURL" onMouseOver="runSound()">リンク4</A><P> <A href="リンク5のURL" onMouseOver="runSound()">リンク5</A><P> </BODY> </HTML> 又、どの部分をコピーすればよいのでしょうか? 何方かご教授をお願いします m(_ _)m

  • JSで動的にリンクを作成

    JSで動的にリンクを作成をしたいのですがわかりません。 例を教えてもらったのですがどう書いていいのかわかりません…。 駄目な例: <div id="link"> <a href="http://aaa.aa/">aaaa</a> </div> いい例 <div id="link"></div> <script> document.getElementByID("link") に対してaddChild </script> いろいろ不足していると思いますがお願いします。

  • 正規表現でアンカータグを判別

    お世話になっております。 $patern='|<a +href *= *"('.$link_url.'[^\"]*)".*?>([^<]*)</a>|'; $addstr = file_get_contents($link_page);//リンクが貼ってあるか確認する  if(preg_match($patern,$addstr)){//リンク設置済み //$link_page、$link_url共にURLが格納されている 以上のようなスクリプトの一部があるのですが、これは、$link_pageというページの中に、$link_urlを移動先としたアンカータグが設置されているか?を見るためのものなのですが、以上のようなものだとアンカータグが <a href=""></a> と、aが小文字であれば認識するものの、 <A href=""></A> このように大文字だと認識いたしません。 先のスクリプトは色々と調べて出来たものなのですが、このように大文字の場合も小文字の場合も認識するようにするにはどうしたら宜しいのでしょうか? 小文字の場合と大文字の場合とで、if文等で記述する?とも考えたのですが、これではスクリプトの量が一気に倍になってしまいスマートじゃないですし・・。 教えて君のようで恐縮ですがアドバイスなど頂戴出来たら幸いです。 お忙しい中恐縮ですが宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • javascriptによる動的なリンクの変更

    javascriptによって、ラジオボタンをチェックする度に(チェックを変える度に) 動的にリンクを変更したいのですが、上手くいきません。 すみませんが、どなたか教えていただけないでしょうか? ちなみに、下記は私が試したコードです。(全く動きませんが。) ラジオボタンのチェックを変えると、<a>タグのhrefの中身のURLが、そのボタンのvalueに対応して変わるようにしたいのですが。。 <FORM NAME="sample"> 選択して下さい -->  <input type="radio" name="list" OnChange="UpdateLink()" value="http://www.yahoo.co.jp" />s <input type="radio" name="list" OnChange="UpdateLink()" value="http://www.vector.co.jp/authors/VA011407/" />m <input type="radio" name="list" OnChange="UpdateLink()" value="mailto:akirayu@a2.mbn.or.jp" />l <A href="samplelink">リンク更新!!</A> </FORM> <SCRIPT LANGUAGE="JavaScript"> <!-- var pos; for(var i=0; i < document.links.length; i++) { if (document.links[i].href.indexOf("samplelink") != -1) pos = i; } function UpdateLink() { checked = document.sample.list.checked Index; document.links[pos].href = document.sample.list[checked ].value; } //--> </SCRIPT>

  • リンク一覧の表示

    <SCRIPT language="JavaScript"> <!-- function ShowLinks(){ var msg = "リンクの一覧:<BR>"; for(i=0; i < document.links.length; i++){ msg = msg + "<A href=" + document.links[i] + ">" + document.links[i] + "</A><BR>"; } var new1 = window.open('','new1', 'toolbar=1, location=1, status=1, menubar=1, scrollbars=yes, resizable=1, width=650, height=800'); new1.document.write(msg); new1.document.close(); } //--> </SCRIPT> 下記のように表示されるのを リンクの一覧: http://***.ne.jp/bbns.cgi http://***.ne.jp/abc.cgi 下記のように番号を付けて表示したいのですが リンクの一覧: 0:http://***.ne.jp/bbns.cgi 1:http://***.ne.jp/abc.cgi

  • VBAに変換してほしい

    java でプログラムして何とか完成できました。 var links = document.getElementsByTagName( "link" ), filtered = [], i = links.length; while ( i-- ) { links[i].rel === "prev" && filtered.push( links[i] ); } alert( filtered[0].href ); このjavaプログラミングをVBAで動作させるためにはどのようにすればよいですか? VBAに詳しいどなたか おしえてください。

  • スクリプトで<div id="links">

    下記スクリプトで<div id="links"></div>のところを 開いた瞬間 <ul> <li><a href="http://foo.com/">foo</a></li> <li><a href="http://bar.com/">bar</a></li> </ul> に変換したいのですがうまくいきません どこをどのように変更すれば変換されるのでしょうか 【スクリプト】 <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <script type="text/javascript"> var URL = new Array("http://foo.com/","http://bar.co.jp/"); var TITLE = new Array("foo","bar"); // 表示用コンテナ var container = document.getElementById('links'); // リセット container.innerHTML=''; var ul=document.createElement('ul'); container.appendChild(ul); for(var i=0;i<URL.length;i++){ var li=document.createElement('li'); var a=document.createElement('a'); // 'href'属性の設定 a.setAttribute('href',URL[i]); // ラベル a.appendChild(document.createTextNode(TITLE[i])); li.appendChild(a); ul.appendChild(li); } </script> </head> <body> <div id="links"></div> </body> </html>

  • フレームの代わり

    最近の傾向として、あまりフレームを使わずにHPを作ったほうが よいと聞き、メニューにもフレームを使わずに作成してきました。 しかしページが増えるごとにやはり、各ページの項目を変更することが 大変になってきました。 そこで外部スクリプトを使い各ページに表示しようと思ってますが、 このやり方は何か問題があるのでしょうか? document.write(" <a href=\"・・・/bbs\">掲示板</a> ") document.write(" <a href=\"・・・/link\">リンク集</a> ") ・ ・ (詳細略) div で外部スタイルシートではリンクが出来ないと聞いてます。 よろしくお願いします。

  • 特定のURLからの訪問者を入室禁止にしたい

    色々調べてみたのですがよく解らなくて質問させて頂きます。 要は、特定のサイトでリンクされて、そのリンクから来る閲覧者を、本来のページとは違うURLへとばしたいのです。(これでお解りいただけるかな?) 指定URL以外からのアクセスを拒否するJavaScriptとして <script> /* 正規のリンク元URL又はURLの一部(アカウントだけでも可)を記述 */ check = "http://www.xxx.xx/xxxxx/"; /* 正規のリンク元からのアクセスではなかった場合に飛ばすURL */ url = "http://www.***.**/****/"; ref = top.document.referrer; // リンク元のURLを取得 if (ref.indexOf(check) < 0) // refにcheckで指定した文字列が含まれているかチェック document.location = url; </script> と言ったScriptは見つけられたのですが、私が望んでいるのは、 /* 入室許可したくないリンク元URL又はURLの一部を記述 */ check = "http://www.xxx.xx/xxxxx/"; /* 入室許可したくないリンク元URLの場合に飛ばすURL */ url = "http://www.***.**/****/"; ref = top.document.referrer; // リンク元のURLを取得 ???????????????? document.location = url; </script> と言ったScriptで、?????の部分をどう記述して良いのかが解りません。 よろしくお願いいたします。

専門家に質問してみよう