3

Redditでは、賛成票と反対票を得るコメントを投稿できます。この情報はページ自体ではなかなかアクセスできないので、APIのようなものを使って情報を集めているようです。

これを行うこのスクリプトを見つけましたが、スクリプトのどこからこの情報を引き出すかを判断できません。誰かがスクリプトがデータを取得する関連行を教えてもらえますか?

4

2 に答える 2

3

各コメントには次のdata属性があります。

<div class="thing id-t1_c4upmtm odd comment " onclick="click_thing(this)" data-fullname="t1_c4upmtm" data-ups="646" data-downs="83">

RedditのHTML構造を理解するのは非常に難しいので、コメントIDからこのようなものを含む要素に到達する方法を見つけてください。

于 2012-06-01T05:08:06.157 に答える
2

そのスクリプトはGM_xmlhttpRequest()、指定されたコメントまたはユーザー ページの JSON データを取得するために使用します。

によって返されるデータはGM_xmlhttpRequest()、次の行でアクセスされます。

var jsonText = response.responseText,data;

次に、スクリプトのprocessTree()関数で解析します。実際には 1 行ではありません。この機能にはスクリプトの多くが必要です。

コメント ページでは、API を使用することが、賛成票と反対票を別々に取得する唯一の方法のようです。

于 2012-06-01T05:54:47.900 に答える