ホームページ  >  に質問  >  本文

Python が Selenium または PhantomJS を使用して動的 Web コンテンツをクロールする方法

Python を使用して株式の定量取引を行う場合、最初のステップは株式の履歴データを取得することです。 http://data.eastmoney.com/sto... Web ページにアクセスします。Web ページのソース コードを開くと、テーブル内のデータが表示されません。これは、ajax テクノロジーを使用して読み込まれていると言われています。 Selenium と phantomJS を使用してこれらの動的 Web コンテンツを取得できることをインターネットで見ましたが、完全なソース コードを取得する方法がわかりません。アドバイスをお願いします

黄舟黄舟2732日前965

全員に返信(3)返信します

  • 我想大声告诉你

    我想大声告诉你2017-05-18 11:03:14

    実際、私はそれを試してみました。ページは xhr を使用してロードされておらず、データをテーブルにロードするためにクラスが呼び出されました。
    たとえば、ホームページのデータ:

    次に、テキストを取得した後、直接再抽出を使用して、それを json で解析します。
    まずここに書いてください。
    ++++++++++++++++++++++++++++++++++++++++

    そして、このウェブサイトはデータのロードに xhr を使用せず、js を使用して json データをロードし、それを動的に解析して表示します。具体的な解析にはjsの知識が必要となりますので、理解できれば自分で解析してみることも可能です。

    試してみました。

    リーリー

    返事
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-18 11:03:14

    この組み合わせを使用する利点は、シンプルで暴力的であることですが、欠点は効率が低いことです。
    これは、表示できないブラウザの読み込みページを開いて、計算結果を読み取ることと同じです。
    爬虫類の学習が初めての方には、Python Network Data Collection という動物の本をお勧めします。
    必要な手順は、動的ページの収集に関する章に記載されています。
    この本はとても薄くてとても実用的です。

    返事
    0
  • 巴扎黑

    巴扎黑2017-05-18 11:03:14

    js や json についてはあまり詳しくなく、クロールを始めたばかりです。プロンプトの後、ソースコードを再度確認したところ、defjson にこのデータがあることがわかりました。json のデータを tbody に表示する方法がわかりません。 pandas の read_html を使用してこのデータをキャプチャできますが、最後の 2 つの列は失われます。まずはjsとjsonを見ないといけないようです

    返事
    0
  • キャンセル返事