0

私は、ユーザーがコンテンツと URL を投稿する Web サイトを構築しています。これは、Facebook のウォール/ニュース フィードによく似ています。

ユーザーから URL を取得し、django バックエンドのサーバーから URL を開いてコンテンツを調べることができると考えていました (Facebook と同じように)。

URLを開いてメタタグをチェックして、どのようなコンテンツかなどを判断するのに役立つdjango-opengraphアプリがあるはずだと思っていましたが、Open GraphはFacebookの発明のようですか?

私の質問は、django を使用して URL を開き、コンテンツ (ビデオ、オーディオ、画像、テキスト) を取得し、サイトに適切に埋め込むことができるコンテンツの種類を判断する方法です。アプリはありますか?

また、ユーザーが送信したサーバーからの URL を開くことのセキュリティ面にも興味があります。

ありがとう!

4

5 に答える 5

4

djangoembedはメンテナンスされなくなりました。しかし、あなたはmicawberを見たいと思うかもしれません。ご要望にぴったりのようです。

于 2012-11-20T17:14:14.357 に答える
2

Open Graph Protocolは確かに Facebook によって発明されたもので、基本的にはページのコンテンツを詳細に説明するために追加できる一連のメタデータです。9GAG は表示されている画像を説明します。YouTube はビデオなどについて説明します。Facebook でコンテンツを共有する機能を提供するほとんどのページは OGP に対応していますが、それでも Web で利用可能なコンテンツ全体を網羅しているわけではありません。

どちらの場合でも、他の人が示唆したように、アプリケーション自体が URL からコンテンツを取得して解決するパスをたどる場合は、十分に注意してください。クライアントのリソースを利用してコンテンツ自体を解決する JavaScript アプリケーションを開発することをお勧めします。プロセス自体は、最初は非常に高価です。

于 2012-09-30T16:51:26.497 に答える
1

既存の応答を拡張するには: requestsを使用してページをダウンロードしてから、 beautifulsoup4で処理します。

import requests
from bs4 import BeautifulSoup

r = requests.get('http://www.facebook.com')
soup = BeautifulSoup(r.text)
print soup.title.string

どちらが返されますか

Welcome to Facebook - Log In, Sign Up or Learn More

HTML から他の要素を引き出す方法については、beautifulsoup のドキュメントを参照してください。

于 2012-09-30T14:26:31.983 に答える
1

urllib2 モジュールで URL をリクエストできます。ただし、BeutifulSoup を使用して URL の内容を確認することをお勧めします。http://pypi.python.org/pypi/BeautifulSoup

于 2012-09-30T10:47:26.647 に答える
0

これには簡単な答えはありません。単にリクエストまたは urllib2 を使用すると、構造を推測してタイトルを取得したり、ニュース記事やビデオの内容を推測したりできます。車輪を再発明する代わりに、私が知っている 2 つの解決策があり、あなたを軌道に乗せるためのものです。

  1. Embed.lyは有料サービスであり、非常に優れた API を備えています。
  2. ジャンゴエンベッド。oEmbed プロトコルを使用した無料のソリューション。私はこれを使用していませんが、まさに必要なもののようです。
于 2012-10-01T05:40:45.690 に答える