問題タブ [scrapy-splash]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3664 参照

javascript - script タグ内のコンテンツを取得する

こんにちは、スクリプト タグ内のコンテンツを取得しようとしています。

http://www.teknosa.com/urunler/145051447/samsung-hm1500-bluetooth-kulaklik

これはウェブサイトです。

これも中に入れたいscriptタグです。

そして、私はこれを試しました。

ご協力いただきありがとうございます。

0 投票する
2 に答える
3348 参照

python - Splash リクエストから Cookie を読み取る

Splash を使用してリクエストを行った後、Cookie にアクセスしようとしています。以下は、リクエストを作成する方法です。

このスクリプトは、Splash のドキュメントからの正確なコピーです。

そのため、Web ページに設定されている Cookie にアクセスしようとしています。Splash を使用していない場合、以下のコードは期待どおりに動作しますが、Splash を使用している場合は動作しません。

これは、スプラッシュの使用中に返されます:

2017-01-03 12:12:37 [スパイダー] デバッグ: Cookie: なし

スプラッシュを使用していない場合、このコードは機能し、Web ページから提供された Cookie を返します。

Splash のドキュメントには、次のコードが例として示されています。

これを正しく理解しているかどうかはわかりませんが、Splash を使用していない場合と同じように Cookie にアクセスできるはずです。

ミドルウェア設定:

私の質問は、Splash リクエストの使用中に Cookie にアクセスするにはどうすればよいですか?

設定.py

スパイダー.py

0 投票する
1 に答える
840 参照

scrapy - ScrapySlash の「マスク」 404

スパイダーで 404 応答を管理しようとすると、いくつか問題が発生します。ScrapySlash は 404 レスポンスを 200 でマスキングしているようです。

これが私のコードです

シンプルprint response.statusには常に 200scrapy shellが表示されます。response <404 http://www.foo.com/>

Request オブジェクトを使用している場合、スパイダーはself.errback_httpbinメソッドに移動しますが、SpaslRequest を使用すると移動しません。SlashRequest は 502 を正しく処理しますが、404 は処理しません。

ありがとう

0 投票する
2 に答える
5953 参照

python - Scrapy + Splash: 接続が拒否されました

スクレイピー+スプラッシュの使い方を学んでいます。仮想環境で内部にプロジェクトを作成し、現在このチュートリアルを行っています: https://github.com/scrapy-plugins/scrapy-splash

私はスプラッシュを実行しました:

その結果:

次のスパイダーを実行すると:

すべて正常に動作します。Scrapy は本文の html を返します。ただし、チュートリアルから SplashRequest を試すと、次のようになります。

端末に次のメッセージが表示されます。

スプラッシュが接続の問題を引き起こしていると思いますが、それらを修正する方法はわかりません。私は追加しました:

しかし、それは役に立ちません!

Q:この問題を解決する方法を知っている人はいますか?

編集: に変更ROBOTSTXT_OBEYFalseても機能しません。コンソール ログ全体:

EDIT2:curl http://localhost:8050/render.html?url=http%3A%2F%2Fwww.examp‌​le.com%2F新しいターミナルウィンドウで実行すると、スプラッシュを実行するために使用したターミナルウィンドウに次の出力が表示されます。