私は間違った用語でこれを言っているかもしれませんので、私が間違っていれば私を修正してください。javascriptが実行された後domからhtmlを取得
私がしたいことは次のとおりです。ウェブサイトのコメントセクションを削り取ろうとしていますが、ページが完全に読み込まれた後にコメントがajaxコールによって読み込まれます。私は経由でのサイトからHTMLをこすりしようとすると:
res, err:= http.Get(url)
if err != nil {
// handle error
}
defer res.Body.Close()
しかし、それは明らかにAJAX呼び出しの前にHTMLを取得します。 ajaxコールの後にhtmlを取得するにはどうすればいいですか?
これは私の頭の上から完全に外れていますが、基本的にはjs-rendererをコードに作成する必要がありますか?私の推測では、JSは何とか実行する必要があるということです。これについてどうやって行くかについての任意の提案/ライブラリ/例?私はこれが行くことを好むだろうが、それは現実的に任意の言語ですることができます。
これは決してうまくいかないでしょう。あまりにも深くなることはありませんが、Go httpクライアントはブラウザではありません。ページがブラウザに読み込まれると、ブラウザはスクリプトを解析して実行しますが、ここでは発生しません。あなたがページをこすりたい場合は、Web UIの自動化のために作られたSeliniumのようなものを使ってページを整える方がよいでしょう。もう1つのオプションは同じものに対して作られたphantomjsというツールですが、この文脈ではスクリプトは決して実行されません。その上に、あなたはjavascriptを使用する必要があります。あなたは、ページの読み込みにフックし、完了した後に実行されるcallbakcを持っている必要があります。 – evanmcdonnal
コメントセクションをスクラップし、ajax URLを直接呼び出してコメントを読み込むとコメントが表示されます。 ご覧になるウェブサイトの例がありますか? – OscarRyz