問題タブ [scrapy-spider]

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 に答える
1434 参照

python - Scrapy: ルール SgmlLinkExtractor の概念

Rule SgmlLinkExtractor の書き方を教えてください
混乱していて、英語のドキュメントがわかりません

多くのページで Web をクロールしたいのですが
、ルールは次のとおりです。

これが私のコードです:

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

python - ウェブページの複数のテーブルからコンテンツをスクレイピングする方法

Web ページの複数のテーブルからコンテンツをスクレイピングしたいのですが、HTML コードは次のようになります。

日付の下にさらに試合があります(その日に行われた試合に応じて、9または2または1)。テーブル数は 63 (日数に等しい)

日付ごとに、チーム間の試合と、どのチームがホームで、どのチームが離れているかを抽出したいと考えています。

私はスクレイピーシェルを使用していて、次のコマンドを試しました:

これはホーム チームのリストを出力し、これはすべてのアウェー チームのリストを出力しました。

これにより、すべての日付のリストが得られました。

私が望むのは、すべての日付で、その日に行われる試合を取得することです (また、どのチームがホームアンドアウェイなのか)

私のitems.pyは次のようになります:

parse関数とItemクラスを書くのを手伝ってください。

前もって感謝します。

0 投票する
4 に答える
16564 参照

python - スクレイピーからcsvファイルをエクスポートします(コマンドライン経由ではありません)

次のように、コマンド ラインからアイテムを csv ファイルに正常にエクスポートしようとしました。

私の質問は次のとおりです。コードで同じことを行う最も簡単な解決策は何ですか? 別のファイルからファイル名を抽出するので、これが必要です。エンドシナリオは、私が呼ぶべきものです

項目を filename.csv に書き込みます

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

python - selenium-webdriver: for ループを使用して find_elements を使用する方法

すべてのリンクと start_time と end_time をページごとに取得してから、 function(parse_detail) に送信して別の情報を破棄したい しかし、セレンを使用して for ループする方法がわかりません

これが私のコードで、エラーがあります:

Seleniumでscrapyみたいなforループの使い方を教えてください。ありがとうございました!

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

image - 利用可能な画像に対してスクレイピーが 404 を返すのはなぜですか?

これは、image_urls フィールドに追加する画像の例です。 http://static.zara.net/photos//2014/I/0/2/p/5875/309/800/2/w/1920/5875309800_1_1_1.jpg それでも、この警告が表示され、画像がアップロードされません。

[zara_com] 警告: ファイル (コード: 404): http://static.zara.net/photos//2014/I/0/2/p/5875/309/800/2/w/1920 から画像をダウンロード中にエラーが発生しました/5875309800_1_1_1.jpg>で参照

http://static.zara.net/photos//2014/V/1/3/p/1280/303/105/2/w/1920/1280303105_2_1_1.jpgのような画像 は正常にアップロードされますが。

何が問題なのですか?何をチェックすればいいですか?

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

python - 私の最初のスクレイピー xpath セレクター

私はこれに非常に慣れておらず、最初のセレクターについて頭を悩ませようとしています。誰か助けてくれませんか?このページからデータを抽出しようとしています:

http://groceries.asda.com/asda-webstore/landing/home.shtml?cmpid=ahc- -ghs-d1- -asdacom-dsk-_-hp#/shelf/1215337195041/1/so_false

div クラスの下のすべての情報 = 一覧 clearfix shelllisting ですが、書式設定の方法がわかりませんresponse.xpath()

なんとかスクレイピー コンソールを起動できましたが、何を入力しresponse.xpath()ても正しいノードを選択できないようです。私はそれが機能することを知っています

返事が来ました。それでも、リストの cleardix シェルフリストに移動する方法がわかりません。このビットを取得したら、スパイダーを介して引き続き作業できることを願っています.

PS このサイトをスキャンすることはできないのでしょうか? 所有者がスパイダーをブロックすることは可能ですか?

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

python - Scrapy : FormRequest に jsessionid がある場合

私は FormRequest を練習していて、最初に問題があり
、def(parse) でリンクをクロールし、def(parse1) で json を取得します。
次にactId、他のリンクをクロールするリクエストを生成できる json を取得しましたが、次のようなエラーがあります。

jsessionid を配信しているためだと思いますjsessionid=A69C5203A49A12DA450F32E6B2AB0E23

必死にやっyield FormRequest(url='http://xxx.tw/ca/toView?mtd=do', callback=self.parse3, formdata={'actId': actId}) て、うまくいくから。

コードは次のとおりです。

質問を解決するにはどうすればよいですか?

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

python - ScrapyFileLogObserver ファイルをメールに送信する方法

スパイダーが閉じたときに自分にメールを送信したい
このソースを見ると、メールを受け取ることができます。failure.getTraceback()しかし、スパイダーが間違っていると書くことがわかりました

ソースコードの一部:

しかし、次のようにコンソールログをメールに送信できるようにしたい:

WARNING: can't find the images!: http://www.example.com取得した場合、別のスパイダーを実行して見逃した画像を取得できるため、このログが必要です

今、私の方法はScrapyFileLogObserver(open("spider.log", 'w'), level=log.INFO).start()、ファイルに書き込むために使用されます.スパイダーを実行した後、それを開いて、何か問題があるかどうかを確認します.このファイルをメールに送信するか、ファイル内の「テキスト」だけで送信できるか

誰かがこれを行う方法を教えてもらえますか? ありがとうございました。

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

python - Pyinstaller のスクレイピー エラー:

Windows 32ビットでscrapyのすべての依存関係をインストールした後。スクレイピー スパイダーから実行可能ファイルをビルドしようとしました。スパイダー スクリプト「runspider.py」は、「python runspider.py」として実行すると正常に動作します。

実行可能ファイル「pyinstaller --onefile runspider.py」のビルド:

C:\Users\username\Documents\scrapyexe>pyinstaller --onefile runspider.py 19 情報: C:\Users\username\Documents\scrapyexe\runspider.spec 49 情報を書き込みました: アイコン、バージョン リソースを設定する機能をテストしています.. . 59 情報: ... 利用可能なリソースの更新 59 情報: UPX は利用できません。89 情報: フック hook-os を処理しています 279 情報: フック フック時間を処理しています 279 情報: フック hook-cPickle を処理しています 380 情報: フック hook-_sre を処理しています 561 情報: フック hook-cStringIO を処理しています 700 情報: フック フック エンコーディングを処理しています 720 情報: フック フック コーデックを処理しています 1351 情報: C:\Users\username\Documents\scrapyexe で PYTHONPATH を拡張しています 1351 情報: 分析をチェックしています 1351 情報: out00-Analysis.toc が存在しないため、分析を構築しています 1351 情報: 分析を実行しています out00-Analysis.toc 1351 情報: Microsoft.VC90 を追加しています。

py 3694 情報: runspider.py 3755 を分析しています 警告: django ルート ディレクトリが見つかりませんでした! 3755 情報: フック hook-django を処理しています 3785 情報: フック hook-lxml.etree を処理しています 4135 情報: フック hook-xml を処理しています 4196 情報: フック hook-xml.dom を処理しています 4246 情報: フック hook-xml.sax を処理しています 4296 情報: 処理していますhook hook-pyexpat 4305 情報: hook hook-xml.dom.domreg を処理しています 4736 情報: hook hook-pywintypes を処理しています 5046 情報: フック hook-distutils を処理しています 7750 情報: 非表示のインポート 'コーデック' が検出されました 7750 情報: 非表示のインポート ' 7750 INFO: ランタイムフックを探しています 7750 INFO: Analyzing rthook C:\python27\lib\site-packages\PyInstaller\loader\rthooks\pyi_rth_twisted.py 8111 INFO: Analyzing rthook C:

ビルドされたexe「runspider.exe」の実行:

C:\Users\ユーザー名\Documents\scrapyexe\dist>runspider.exe

トレースバック (最新の呼び出しが最後):

ファイル ""、2 行目、

ファイル "C:\python27\Lib\site-packages\PyInstaller\loader\pyi_importers.py"、270 行目、load_module

exec(バイトコード、module.dict )

ファイル "C:\Users\username\Documents\scrapyexe\build\runspider\out00-PYZ.pyz\scrapy" の 10 行目

ファイル「C:\Users\username\Documents\scrapyexe\build\runspider\out00-PYZ.pyz\pkgutil」、行 591、get_data 内

ファイル "C:\python27\Lib\site-packages\PyInstaller\loader\pyi_importers.py"、342 行目、get_data 内

fp = オープン (パス, 'rb')

IOError: [Errno 2] そのようなファイルまたはディレクトリはありません: 'C:\Users\username\AppData\Local\ \Temp\_MEI15522\scrapy\VERSION'

私はどんな種類の助けにも非常に役立ちます。Windows用のスクレイピースパイダーからスタンドアロンexeを構築する方法を知る必要があります。

助けてくれてありがとう。