Scrapy + Gerapyを使用してWebクローラーをデプロイする方法を教えてください

上の「Pythonクローラーとデータマイニング」をクリックしてフォローしてください

Books」に返信すると、初心者から上級者まで、合計10冊のPythonの電子書籍を受け取ることができます。

鶏肉

スープ

彼は1万冊の本を腹に保管し、草の中で頭を下げることを拒否した。

序文

こんにちは、皆さん、また会いましょう。私はPythonの上級者です。ナンセンスな話はしないでください。肝臓を始めてください、ここでOri!

クローラー管理のレンダリング

依存パッケージ

ファイル:requirements.txt‍‍‍‍‍‍‍‍‍

ファイルの内容はここに直接投稿されます:

appdirs==1.4.4
APScheduler==3.5.1
attrs==20.1.0
Automat==20.2.0
beautifulsoup4==4.9.1
certifi==2020.6.20
cffi==1.14.2
chardet==3.0.4
constantly==15.1.0
cryptography==3.0
cssselect==1.1.0
Django==1.11.29
django-apscheduler==0.3.0
django-cors-headers==3.2.0
djangorestframework==3.9.2
furl==2.1.0
gerapy==0.9.5
gevent==20.6.2
greenlet==0.4.16
hyperlink==20.0.1
idna==2.10
incremental==17.5.0
itemadapter==0.1.0
itemloaders==1.0.2
Jinja2==2.10.1
jmespath==0.10.0
lxml==4.5.2
MarkupSafe==1.1.1
orderedmultidict==1.0.1
parsel==1.6.0
Protego==0.1.16
pyasn1==0.4.8
pyasn1-modules==0.2.8
pycparser==2.20
PyDispatcher==2.0.5
pyee==7.0.2
PyHamcrest==2.0.2
pymongo==3.11.0
PyMySQL==0.10.0
pyOpenSSL==19.1.0
pyppeteer==0.2.2
pyquery==1.4.1
python-scrapyd-api==2.1.2
pytz==2020.1
pywin32==228
queuelib==1.5.0
redis==3.5.3
requests==2.24.0
Scrapy==1.8.0
scrapy-redis==0.6.8
scrapy-splash==0.7.2
scrapyd==1.2.1
scrapyd-client==1.1.0
service-identity==18.1.0
six==1.15.0
soupsieve==2.0.1
tqdm==4.48.2
Twisted==20.3.0
tzlocal==2.1
urllib3==1.25.10
w3lib==1.22.0
websocket==0.2.1
websockets==8.1
wincertstore==0.2
zope.event==4.4
zope.interface==5.1.0

プロジェクトファイル

プロジェクトファイル:qiushi.zip

実現機能:恥ずかしい百科事典段落クローラー、

これはScrapyプロジェクトであり、依存関係パッケージは上記のとおりです

プロジェクトステップを実行する

  • 依存関係パッケージをインストールしてプロジェクトファイルを解凍した後、pip install -r requirements.txt

  • 注文の実行scrapy crawl duanzi --nolog

Scrapydを構成する

これScrapydは、私たちが作成したScrapyプロジェクトを管理するプロジェクトであることが理解できますこれを構成しrunpauseなどのコマンドを使用してクローラー制御できます

他のことについては話しません。これはあまり使用されていません。必要なのは開始することだけです。

Scrapydサービスを開始します

  1. qiushiクローラープロジェクトディレクトリに切り替えます。Scrapyコマンドを実行するにはクローラープロジェクトがクローラーディレクトリに入る必要があります。

  1. 注文の実行scrapyd

  1. ブラウザ入力http://127.0.0.1:6800/、次の画像は正しいようです

Scrapyをパッケージ化し、Scrapydにアップロードします

これらはほんの始まりScrapyd過ぎませんが、ファイルで以下を構成する必要がScrapyあるプロジェクトをデプロイしませんScrapyScrapyscrapy.cfg

構成は次のとおりです。

パッキングコマンド

scrapyd-deploy <部署名> -p <项目名>

このサンプルコマンド

scrapyd-deploy qb -p qiushi

図に示すように、次の図は成功を示しているように見えます

注:プロセスに問題がある可能性があります。後で解決策を示します!!!

再びブラウザに戻ると、もう1つの項目がありますqiushi。これまでのところ、Scrapyd構成は完了しています。

Gerapyを構成する

上記の設定が完了したら、Gerapyを設定できます。実際、Scrapydには上記よりもはるかに多くの機能がありますが、コマンド操作であるため、使い勝手がよくありません。

Gerapyのビジュアルクローラー管理フレームワークは、使用Scrapydしてバックグラウンドでハングアップしたときに開始する必要があります。実際、本質はScrapydサービスにリクエスト送信することですが、それは単なる視覚的な操作です。

Scrapy、Scrapyd、Scrapyd-Client、Scrapy-Redis、Scrapyd-API、Scrapy-Splash、Jinjia2、Django、Vue.js開発に基づく

構成手順

GerapyそれScrapyは何の関係もないので、あなたは自由にフォルダを選ぶことができます、ここで私はgerapyDemoフォルダを作成しました

  1. コマンドを実行してgerpayを初期化します

    gerapy init

ジェラピーフォルダを生成します

  1. 生成されたgerapyフォルダーを入力します

  1. コマンドを実行すると、テーブルが生成されます

    gerapy migrate

  2. gerapyサービスを開始します。デフォルトはポート8000​​です。開始するポートを指定できます

    gerapy runserver
    gerapy runserver 127.0.0.1:9000 本机 9000端口启动

  1. ブラウザを開いて入力するhttp://127.0.0.1:8000/と、次のインターフェイスが成功を示しているように見えます

もちろん、通常の状況では、それはおそらくそのようなインターフェースであり、アカウントのパスワードを生成する必要があります

サービスを停止し、コマンドをgerapy creatsuperuser入力し、プロンプトに従ってアカウントパスワードを作成し、アカウントでログインします

Gerapyにクローラープロジェクトを追加する

上記のすべてを構成したら、クローラープロジェクトを構成できます。少しの方法で、クローラーを実行できます。

をクリックし主机管理-->创建ます。ipはScrapydサービスのホスト、ポートはScrapydのポート、デフォルトは6800です。入力して、[作成]をクリックします。


次に、ホストリスト、スケジューリングで、クローラーを実行できます

クローラーを実行する

結果を取得し、結果はローカルに書き込まれました

パッケージクローラーのアップロード

上記のプロセスでは、クローラーしか再生できませんが、完全ではありません。実際には、まだパッケージ化プロセスがあります。クローラーがパッケージ化されている場合にのみ、真に組み合わせることができます。

ステップ

  1. まず、クローラープロジェクトをgerapyの下のprojectsフォルダーにコピーする必要があります

  1. ページを更新し、[プロジェクト管理]をクリックすると、構成可能パッケージとパッケージがxのステータスになっていることがわかります。

[デプロイ]をクリックして説明を入力し、[パッケージ]をクリックします

再びメインインターフェイスに戻ると、パッケージがすでに正しいことがわかります


この時点で、基本的にプロセス全体が終了します。

解決scrapyd-deployは内部および外部コマンドではありません

通常、scrapyd-deployを実行するとscrapyd-deploy、内部コマンドでも外部コマンドもないというプロンプトが表示されます。これは通常の操作です。

解決手順

  1. Pythonインタプリタの下でScripts新しいファイルscrapy.batscrapyd-deploy.bat2つのファイルを見つけます

これら2つのファイルを変更します。内容は次のとおりです。

scrapy.bat

@echo off
D:\programFiles\miniconda3\envs\hy_spider\python D:\programFiles\miniconda3\envs\hy_spider\Scripts\scrapy %*

scrapyd-deploy.bat

@echo off
D:\programFiles\miniconda3\envs\hy_spider\python D:\programFiles\miniconda3\envs\hy_spider\Scripts\scrapyd-deploy %*

注:赤いボックスは通訳の場所を示しています。上記の内容は1行です。貼り付け方法は2行です... 1対1の対応です。

Gerapyの使用プロセスの概要

1.gerapy init 初始化,会在文件夹下创建一个gerapy文件夹
2.cd gerapy
3.gerapy migrate
4.gerapy runserver 默认是127.0.0.1:8000
5.gerapy createsuperuser 创建账号密码,默认情况下都是没有的
6.游览器输入127.0.0.1:8000 登录账号密码,进入主页
7.各种操作,比如添加主机,打包项目,定时任务等

総括する

上記は導入的な方法で解決され、Gerapy + Scrpyd + Scrapy視覚化を通じてクローラーデプロイする次の方法を整理します

操作中にタスクの問題が発生した場合は、以下にメッセージを残すことを忘れないでください。問題ができるだけ早く解決されることがわかります。

私は月曜日のプログラマーです。悪くないと思うなら、親指を立てるのを忘れないでください。見てくれてありがとう。

記事が大丈夫だと思うなら、私たちをサポートするために好きでコメントを残すことを忘れないでください。読んでいただきありがとうございます。ご不明な点がございましたら、下にメッセージを残してください〜

Pythonについて詳しく知りたい場合は、学習Webサイトhttp://pdcfighting.com/を参照し、クリックして元のテキストを読んでください。直接アクセスできます〜

--- - --- --- --- - --- 終わり --- - --- - --- --- - -

以前の素晴らしい記事の推奨事項:

ようこそ誰もが好きにメッセージを残して、前方、転載をあなたの会社やサポートをありがとうございました

Python学習グループに参加したい場合は、バックグラウンドで返信してください[グループに参加]

何千もの川や山がいつも恋をしています。[見る]をクリックしください。

/本日のメッセージトピック/

一言か二言言ってください~~

おすすめ

転載: blog.csdn.net/pdcfighting/article/details/113449129