問題タブ [pyspider]
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.
python - Scrapy を pyspider に置き換えることはできますか?
私はScrapy
Webスクレイピングフレームワークをかなり広範囲に使用してきましたが、最近、 と呼ばれる別のフレームワーク/システムがあることを発見しました。pyspider
これは、githubページによると、新しく、活発に開発され、人気があります。
pyspider
のホームページには、すぐに使用できるいくつかの機能がリストされています。
スクリプト エディター、タスク モニター、プロジェクト マネージャー、結果ビューアーを備えた強力な WebUI
Javascriptページ対応!
タスクの優先度、再試行、定期的および再クロール (更新時間など) の年齢またはインデックス ページのマークによる
分散アーキテクチャ
これらはScrapy
それ自体では提供されないものですが、portia
(Web UI の場合)、scrapyjs
(js ページの場合)、scrapyd
(API を介したデプロイと配布) の助けを借りて可能になります。
pyspider
それだけでこれらすべてのツールを置き換えることができるというのは本当ですか? 言い換えれば、pyspider
Scrapy の直接的な代替手段はありますか? そうでない場合、それはどのユースケースをカバーしていますか?
「広すぎる」または「意見に基づく」一線を越えていないことを願っています。
phantomjs - pyspider と phantomjs で画像をスクレイピングできない
ここで、このWeb ページの項目 (iphone) のすべての画像をスクレイピングしたいと考えています。まず、画像のすべてのリンクを抽出し、リクエストを 1 つずつ src に送信して、それらをフォルダー '/phone/' にダウンロードします。これが私のコードです:
それは非常に直感的でシンプルです。しかし、コードを実行しても何も起こらず、ターミナルに次のログ メッセージが表示されました。
私はこの問題にほとんど夢中です。何が問題なのか、どうすれば修正できるのか教えてください。前もって感謝します!
python - Python 3.5/win 64 の Pyspider のインストール "lxml のホイールの構築に失敗しました
私はpyspiderをインストールしようとしていますが、常に得ました
「lxml のホイールの構築に失敗しました...」、lxml が正しくインストールされていないようで、http://www.lfd.uciから lxml-3.6.1-cp35-cp35m-win_amd64.whl をダウンロードしようとしました.edu/~gohlke/pythonlibs/#psutil . ただし、ダウンロード リンクが無効になっているようです。これを解決する方法、または whl ファイルを共有する方法についてアドバイスをいただけますか? どうもありがとう!
python - Scrapy を使用して 20 万のドメインからテキストを抽出する
私の問題は次のとおりです。たとえば、www.example.com などのドメインから貴重なテキストをすべて抽出したいのです。だから私はこのウェブサイトに行き、最大深さ2のすべてのリンクにアクセスし、それをcsvファイルに書きます。
1 つのプロセスを使用して複数のクローラーを生成するこの問題を解決するモジュールを Scrapy で作成しましたが、非効率的です。1 時間あたり最大 1,000 個のドメイン/最大 5,000 個の Web サイトをクロールでき、私のボトルネックが CPU であることがわかる限り (なぜならGILの?)。しばらく PC を離れた後、ネットワーク接続が切断されていることに気付きました。
複数のプロセスを使用したいとき、ツイストからエラーが発生しました:マルチプロセッシング オブ スクレイピー スパイダーの並列プロセス
だから私は何をすべきかいくつかのアイデアを持っています
- 反撃してねじれを学び、マルチプロセッシングを実装し、Redis で分散キューを実装しようとしますが、scrapy がこの種の仕事に適したツールであるとは思いません。
- pyspider を使用します - 必要なすべての機能を備えています (使用したことはありません)。
- Nutch を使用します。これは非常に複雑です (私は使用したことがありません)。
- 独自の分散クローラーを構築しようとしましたが、4 つの Web サイトをクロールした後、SSL、重複、タイムアウトの 4 つのエッジ ケースが見つかりました。ただし、次のような変更を加えるのは簡単です。
どのような解決策をお勧めしますか?
Edit1: コードの共有
そして呼び出し:
クモは特に興味深いものではありません。