人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

facebookの検索のURLについて教えてください。
※facebookはログイン状態であることが前提

例えば「山田太郎」を検索しようと思った時、URLの記述は、
http://www.facebook.com/search/results.php?q=山田太郎
で良いかと思っています。
このURLをそのままコピペすれば検索結果が正常にでるようです。

これをhtmlファイルのソースに記述、つまり
<a href="http://www.facebook.com/search/results.php?q=山田太郎" target="_blank">山田太郎</a>
のようにしてみたのですが、リンクをクリックしても上手く検索されません。

原因はどのようなところにあるでしょうか?
どうぞよろしくお願い致します。
※当方ブラウザはGoogleクローム使用です。

●質問者: yoshifuku
●カテゴリ:ウェブ制作
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● kitiko
●40ポイント

ブラウザ内部では、URLはUTF-8など文字列のエンコード・デコードしなければうまくリンクされません。

以下の変換サイトを使って、山田太郎をUTF-8にエンコードしましょう。

http://n7.com/japanese/

そうすると以下のようにリンクが作成されます。

http://www.facebook.com/search/results.php?q=%e5%b1%b1%e7%94%b0%e5%a4%aa%e9%83%8e


この「%e5%b1%b1%e7%94%b0%e5%a4%aa%e9%83%8e」が山田太郎です。


yoshifukuさんのコメント
ありがとう。 なるほどです。 実は、このように変換したいURLがたくさんあります。数百個くらい。上手くExcelとか使って変換できないかな。 山田太郎→%e5%b1%b1%e7%94%b0%e5%a4%aa%e9%83%8e みたいになってくれればOKなんです。

2 ● Cherenkov
●60ポイント ベストアンサー

なるほど、回答1をヒントに、こちらで再現しなかった理由がわかった気がします。

<a href="http://www.facebook.com/search/results.php?q=山田太郎" target="_blank">山田太郎</a>
<a href="https://www.facebook.com/search/results.php?q=%E5%B1%B1%E7%94%B0%E5%A4%AA%E9%83%8E" target="_blank">山田太郎</a>

q=山田太郎のままで行いたい場合はhtmlをUTF-8で保存すれば大丈夫なはずです。
UTF-8に保存したくなくて、URLエンコードを行いたい場合は、現在URLはどのような状態で保存してありますか?
状態を教えてもらえれば変換する方法を提案できます。
例えば一枚のHTMLにいくつも入っているだけなら、HTMLをコピペしてJavaScriptで変換するとか。


yoshifukuさんのコメント
ありがとです。 少し教えてください。 「htmlをUTF-8で保存」というのは、具体的にどのような手順を踏めばよいでしょうか。 > URLエンコードを行いたい場合は、現在URLはどのような状態で保存してありますか? 現在URLはCSVファイルで管理して保存しています。 <a href="http://www.facebook.com/search/results.php?q=山田太郎" target="_blank">山田太郎</a> <a href="http://www.facebook.com/search/results.php?q=鈴木花子" target="_blank">鈴木花子</a> ・・・ こんな感じで整列しており、そのままテキストへペーストしてhtmlファイル化しておりました。

yoshifukuさんのコメント
あ、この状態だと上手くリンクされてますね(笑)。

yoshifukuさんのコメント
ひょっとしたらmetaタグでの表記が必要でしょうか?

Cherenkovさんのコメント
>「htmlをUTF-8で保存」 適当なエディタを使えば保存する際に文字コードを指定できます。

Cherenkovさんのコメント
metaタグでutf-8を指定しても実際に保存されている文字コードが違っていては意味がありません。 CSVをコピペしてURLエンコードしたものを表示するやつを作ってみますね。

yoshifukuさんのコメント
実は作成したいhtmlファイルはかなり大量に及ぶため、手動でエディターを使って1つ1つ作成というのはきっついのです。

Cherenkovさんのコメント
まあそうですよね。具体的に、CSVの状態からどう自動化したいのでしょうか。

Cherenkovさんのコメント
まずは、山田太郎をUTF-8で保存してみて、うまくいくようなら、この質問は終了させたほうがいいかと。

yoshifukuさんのコメント
もう少し正確にいうと、Excelを使ってまして、シートにhtmlを記述して、VBAでそのhtmlを読み取ってテキストファイルを拡張子「.htm」で吐き出させています。このhtml記述の中の一部に、先ほどのfacebookの検索リンクがあります。 たぶん「.htm」で吐き出させるとき、通常のテキストではなくて「htmlをUTF-8で保存」ができれば解決できるような気がしてきました。VBAで記述修正できるかしら。

Cherenkovさんのコメント
[http://blog.livedoor.jp/akf0/archives/51597069.html:title=全ては時の中に… : 【Excel VBA】指定した文字コードでファイルに出力する]

Cherenkovさんのコメント
[http://d.hatena.ne.jp/niemands/20090316/1237225383:title=Excel VBAでUTF-8のテキストファイルを扱う(ADODB.Stream) - 百年の未読]

Cherenkovさんのコメント
もしくはURLエンコード [http://colo-ri.jp/develop/2009/07/urlexcelurl.html:title=日本語URLをExcelで手軽にURLエンコードする方法]

3 ● 楽1978
●0ポイント

Facebookのアカウントを持っていないので試せませんが、単純に短縮URLにしてみてはどうでしょう?
http://goo.gl/fWm8C

関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ