2

Scrapy 0.16のソースコードをダウンロードした後、Macbookで./bin/runtests.shを使用してテストを実行しようとしました。驚いたことに、テストは失敗しました。これらの結果が得られます:FAILED(スキップ= 46、失敗= 9、成功= 887)。この問題に遭遇した人はいますか?どのように修正しますか?

[FAIL]
Traceback (most recent call last):
  File "/Users/lws/Downloads/scrapy-scrapy-7b5310d/scrapy/tests/test_utils_queue.py", line 128, in test_close_open
    self.assertEqual(q.pop(), 'c')
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/trial/unittest.py", line 270, in assertEqual
    % (msg, pformat(first), pformat(second)))
twisted.trial.unittest.FailTest: not equal:
a = None
b = 'c'

[FAIL]
Traceback (most recent call last):
  File "/Users/lws/Downloads/scrapy-scrapy-7b5310d/scrapy/tests/test_utils_queue.py", line 128, in test_close_open
    self.assertEqual(q.pop(), 'c')
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/twisted/trial/unittest.py", line 270, in assertEqual
    % (msg, pformat(first), pformat(second)))
twisted.trial.unittest.FailTest: not equal:
a = 'e'
b = 'c'
4

1 に答える 1

2

はい、これはスクレイプのバグであり、GNU / Linuxでは現れず、macosでのみ現れるようです。これは、FifoDiskQueueがバッファなしのファイル読み取りとバッファ付きのファイルシークを混在させていることが原因です。

私はこれと見つかった他のいくつかの互換性の問題に対処するPRを書きました。ただし、修正によって新しいリリースになる時期はわかりません。

Scrapyは、Mac OSでは問題なく動作します(FifoDiskQueueは、デフォルトでは使用されない代替のキューメカニズムです)。

于 2012-12-01T16:42:45.593 に答える