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

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

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

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

4回答

1336閲覧

自サイトから他サイトに対して検索・検索結果取得は可能でしょうか?

退会済みユーザー

退会済みユーザー

総合スコア0

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2018/12/11 06:52

自分が作成したサイトで検索フォームを設置し、
指定のサイトで検索及び検索した結果を取得することは可能でしょうか?
検索結果は自サイトで表示したいです。

スクレイピングという技術を使うのでしょうか?
表示されているHTMLの情報を取得するだけでなく、
自サイトで設定した検索条件を他サイトに対しても設定し、検索をかけて、情報を取得し自サイトで表示するということを実現したいです。

どのような技術を使えば良いのかがわからないためご教示お願いいたします。
イメージ

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

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

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

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

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

guest

回答4

0

例示されているYoutubeであればAPIが提供されています

というように、公式で検索結果を提示するような機能が提供されているものであればそちらを使えば良いと思いますが、
質問内容にある「スクレイピング」は結構グレイなところがあります。
規約で同等の行為の禁止を謳っているサイトもあるくらいです。
自サイトの情報を勝手に借用されることになるわけですし、悪用にもつながりかねません。
本来のアクセスルートではないわけですからサイト管理者に何かしらのストレスを与える可能性もあります。
何度もリクエストを頻繁に送るようであれば攻撃されたと認識されることもあります。

そのあたりはスクレイピングに関する記事をもう少し読まれた方がいいかもしれません。
teratailでもよく質問があがりますが苦言を呈する回答もよくつきます。
学習のため(そしてローカルのみ)でないのでしたらあまり積極的な活用はされない方が良いでしょう。

投稿2018/12/11 07:04

編集2018/12/11 07:15
m.ts10806

総合スコア80765

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

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

退会済みユーザー

退会済みユーザー

2018/12/11 07:18

Google 提供のものに関しては、完全にNGですよ。 そのためのGCSの規約があったりしますから。(有料版のみレイアウトを任意にできる) ゆちゅべは読んだことないや
m.ts10806

2018/12/11 07:23

ヘルプや規約、説明書は読んでから、ですね。 結構軽い気持ちでスクレイピングる人が多いので、 いつか大事件を起こしそうで。訴訟問題とか起きないとも言えませんし。
m.ts10806

2018/12/11 07:24

API活用も決められた範囲内で、ですね。 アクセス回数の制限が設けられてるものもありますしね。 範囲外の情報は提供してないでしょうけど。
guest

0

例示の物なら多分できるのでは?

【YouTube Data API の概要  |  YouTube Data API (v3)  |  Google Developers】
https://developers.google.com/youtube/v3/getting-started?hl=ja

【Custom Search  |  Google Developers】
https://developers.google.com/custom-search/

投稿2018/12/11 07:01

kei344

総合スコア69364

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

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

0

ベストアンサー

kei344さんがおっしゃられてるように、
画像に書いてあるGoogleの検索やYouTubeはサービス提供内でいけます。

自サイトで設定した検索条件を他サイトに対しても設定し、検索をかけて、情報を取得し自サイトで表示するということを実現したいです。

構想としては「あたかも既存のネットバンクであるかのように振る舞い、ユーザIDやパスワード、口座番号を盗み出す」フィッシングサイトに似通ってますね。
また、他人の情報資産にタダ乗りするコピーサイトにも似ています。

技術的な出来るか出来ないかの話なら、拒否する方法も一応ありますが、大抵のサイトで出来ます。
基本的にWebサーバというのは、HTTPリクエストを待ち受けて、リクエストに応じたHTMLや画像ファイルのバイナリ文字列等を返すサーバです。
ブラウザと同じように、先方のWebサーバにHTTPリクエストを送信し、戻ってくるHTML文字列を解析すれば良いのです。
これを一般的にスクレイピングと呼びまして、まぁ頻度や使い方次第ではそんなに悪いものではありません。

ただし、Webサーバにはアクセスログというものが備わっており、
HTTPリクエストを受け取ったという情報が時系列で全て記載されています。
もし貴方のサービスが売れっ子になり、日々100万検索を中継するような事態になれば、そりゃ先方も気付くでしょう。
アクセス拒否、著作権侵害で訴える、フィッシングサイトとして通報…中には犯罪として捕まるようなケースも考えられるので、営利目的でWebサービスを立ち上げる場合は特に注意して、先方のサービスに許可を取るなど根回しはするようにしてくださいね。

まぁ、よほど自己中な事をしない限りは社会的に殺されるようなことにはならないでしょう。
ドワンゴのニコニコ動画は当初YouTubeの動画を無断で引っ張ってきて、コメントを載せるという酷いWebアプリでしたが、トラフィックだけ奪って役に立たないという理由でYouTube出禁になり数ヶ月使えなくなるという失態(今となっては笑い話)がありました。
その後社内で予算を割り振ってもらい、動画配信サーバをこしらえて再登場を果たしています。
とりあえず、倫理的な事は一応頭に入れておきながら作ってみてはどうでしょう?
ダメならダメで怒られて終わりです。

でもまぁ、やっぱり許可を取るってのは一番誠実な行為ですよね。
その一環として、Google等の売れっ子のサービスはもう最初からAPIが公開されており、
使い方の説明と許可の取り方がシステマチックに作られており、価格等も公開されているわけですね。

投稿2018/12/11 08:12

miyabi-sun

総合スコア21158

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

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

0

他サイトがそういうapiを用意してくれていればできます
そうでない場合でも他サイト側がなんらかの検索処理を受け付けている前提であれば
サーバーサイドのプログラムでクロールすればいけるかもしれません。

投稿2018/12/11 06:58

yambejp

総合スコア114572

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問