2017-01-02 11 views
0

私は現在、Scrapyを使ってウェブサイトをスクラップしています。私もそのウェブサイトをレンダリングするためにスプラッシュを使用しています。スプラッシュを経て、応答で返されたHTMLがシングルページの反応サイトをスクラップした後、リンクをたどるScrapyとSplashで反応するサイト

<li data-link="shoppingSearch" class="menu-list-item__body--item" 
data-reactid=".0.1.1.0.1.$1.1.0.$0">Book</li> 

である私は、データリンクまたはreactidをプルするセレクタを作成することができますが、私は、このリンクをたどるするかどうかはわかりません。私の最終目標は、フォームを取得してデータを送信することです。

+0

ナビゲーションを行い、そのノードに接続JSのonClickハンドラがありますを参照してください。そのノードの実際のクリックをシミュレートする必要があります。 –

+0

情報をいただきありがとうございます、それは治療で行うことができますか?私はそれを見て、それは私に出発点を与えます。 – Diesel

+0

たぶんあなたはそれがナビゲートするURLが何であるかを知ることができ、そのURLの動的データがどこから来ているのかを見ることができます(おそらく、いくつかのWeb API呼び出しから受け取ったリストのID)。あなたはそのようにナビゲーション動作を模擬することができます。汎用ソリューションではありませんが、可能な限り低いレベルの可能性があります。 –

答えて

0

スプラッシュのhttp apiを使用している場合は、waitパラメータを増やすか、ルアコードを実行する場合はsplash:wait()関数を呼び出すことができます。

例えば:

curl 'http://localhost:8050/render.html?url=http://domain.com/page-with-javascript.html&wait=3' 

はスプラッシュrender.html endpoint argumentssplash:wait()

+0

私は完全に理解する必要はありません、私はかなりページが完全に読み込まれていると確信しています。私は5秒待って、私はまだ上記のようにリンクを取得します。 – Diesel

関連する問題