2017-12-19 14 views
0

を要求しますあると呼ばれる。は、PythonでHTTP経由でダウンロードしたリソースのトレースを維持することは、オープンクロームコンソールを維持しながら、私はen.wikipedia.org/wiki/Hello</em><em>を訪問モジュール

GET https://en.wikipedia.org/wiki/Hello -> 200 

、その後、他の多くのHTTP要求が処理されます。を.pngのウィキペディアのロゴを、いくつかのCSS、スクリプトやその他のファイルには、私のブラウザにダウンロードされ、一緒に彼らは、実際のページをレンダリングウィキペディアrequests

は、私は同じことをしたい:シンプル

requests.get("https://en.wikipedia.org/wiki/Hello") 

は私にこんにちはページのHTMLドキュメントを返しますが、それ以外のリソースがダウンロードされません。

ページをレンダリングするために開いた接続数とダウンロードされる要素のトレースを保持したいと思います。上記のGETリクエストは画像、CSS、またはスクリプトを返しません。

私は何か重要なことを忘れていると思います。ウェブページを完全にロードするために必要なリソースは誰が知っていますか?

私は(requestsで)どのリソースがダウンロードされていて、どれだけの接続が取得されたかを知りたいので、これを求めています。

私はサーバーがページを読み込む必要があることを知っているサーバーだと思うので、サーバーはこの情報をクライアントに伝える必要がありますが、どこにいなくなっていますか:HTTPリクエストヘッダーで何も見つかりませんでした。

私はこのリスト/辞書/ JSON /ページを完全にレンダリングするのに必要なリソースが必要なので、私は手動でPythonでそれを行うことができます。

答えて

0

ハイファイブ自分XD

他の必要なリソースは、最初にダウンロードリソースに(上場)です:HTMLドキュメント。 私はそれを解析し(BeautifulSoup4)、必要なもの(<link rel=... href=... />)を手に入れようとしています。これは、ページに必要なダウンロードとリソースの数を教えてくれます。

接続の数については、HTTP keep-aliveについて読んでいます:リソースをダウンロードするために単一のTCP接続を使用する場合、デフォルトでHTTP 1.1接続が維持されているので、何個の接続を開くか心配する必要はありません。 HTTP 1.0を使用しているかどうかをチェックするだけです。もしそうなら、Connection: keep-aliveヘッダーを探してください。

関連する問題