2017-05-30 1 views
1

MANIFEST.inを使用しています。そのファイルがScrapy Cloudに追加されたeggフォルダにロードされています。しかし、私はエラーが発生し続けます。私は自分のPC上で直接それを実行し、それは完全にsettings.py上のファイルproxylist.txtにロードされて実行されますが、私はScrapyCloudでそれをロードしたら、そうでない場合は https://dl.dropbox.com/s/b84d2sk8zu8mj34/bases_de_datos.zipScrapy Cloudにファイルを追加し、ScrapProxiesのためにSettings.pyで使用します。

:ここ

は私のプロジェクトであります作業。

どうすればいいですか?私は言ったエラーを得る

IOError: [Errno 2] No such file or directory: '../proxylist.txt' 
IOError: [Errno 2] No such file or directory: 'proxylist.txt' 
IOError: [Errno 2] No such file or directory: '/resources/proxylist.txt' 

私は可能な限り45回以上の試行を試みますが、それは動作しません。

私はいくつかのガイダンスに感謝します。

ありがとうございます!

+0

あなたはhttps://helpdesk.scrapinghub.com/support/solutions/articles/22000200416-deploying-non-code-を確認しましたファイル? –

+0

私は解決策を試みますが、私は結果を得ます。 "import pkgutil PROXY_LIST = pkgutil.get_data(" bases_de_datos "、" resources/proxylist.txt ")'メッセージは "PROXY_LISTの設定がありません"です。 –

+0

ソリューションで自分の仕事を進めることができました今はすべてを文字列として扱います。例外:IOError:[Errno 2]そのようなファイルやディレクトリはありません: 'http://200.76.236.106:8080\nhttp://189.158.185.148:8080\nhttp://201.173.165.17:8080\nhttp://200.92 .152.130:8080 \ nhttp://189.194.48.14:8080 \ nhttp://189.201.242.202:8080 \ nhttp:// ..... –

答えて

0

私がScrapy Cloudにデプロイし、パッケージリソースとしてローカルファイルを使用する、「ファイルリソース」というサンプルのScrapyプロジェクトがあります。 (唯一のテストのための偽の、)プロキシのリストと

$ tree 
. 
├── fileresource 
│   ├── __init__.py 
│   ├── items.py 
│   ├── middlewares.py 
│   ├── pipelines.py 
│   ├── resources 
│   │   └── mylist.txt 
│   ├── settings.py 
│   └── spiders 
│    ├── example.py 
│    └── __init__.py 
├── requirements.txt 
├── scrapinghub.yml 
├── scrapy.cfg 
└── setup.py 

私のサンプルファイル:

$ cat fileresource/resources/mylist.txt 
http://localhost:45793 
http://localhost:45794 
http://localhost:45795 

そして、これはsysosを使用して、リソースファイルのパスを解決PROXY_LIST設定で、例settings.py次のとおりです。

$ cat fileresource/settings.py 
# -*- coding: utf-8 -*- 
import os 
import sys 


BOT_NAME = 'fileresource' 

SPIDER_MODULES = ['fileresource.spiders'] 
NEWSPIDER_MODULE = 'fileresource.spiders' 

DOWNLOADER_MIDDLEWARES = { 
    'scrapy.downloadermiddlewares.retry.RetryMiddleware': 90, 
    'scrapy_proxies.RandomProxy': 100, 
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110, 
} 

PROXY_LIST = os.path.join(os.path.dirname(sys.modules['fileresource'].__file__), 
    'resources/mylist.txt') 

setup.pyは非常にthe example in Scrapinghub's knowledge baseのようなものです:

$ cat setup.py 
# Automatically created by: shub deploy 

from setuptools import setup, find_packages 

setup(
    name   = 'fileresource', 
    version  = '1.0', 
    packages  = find_packages(), 
    package_data={ 
     'fileresource': ['resources/*.txt'] 
    }, 
    entry_points = {'scrapy': ['settings = fileresource.settings']}, 
    zip_safe=False, 
) 

私はscrapy-proxiesを持つrequirements.txtファイルでそれをテストした:

$ cat requirements.txt 
scrapy-proxies 

$ cat scrapinghub.yml 
project: 123456789 
requirements: 
    file: requirements.txt 
関連する問題