VirtualBox CentOS7.7.1908 Python3.8 ビルド Scrapy 開発環境 [グラフィックチュートリアル]

VirtualBox CentOS7.7.1908 Python3.8 ビルド Scrapy 開発環境 [グラフィックチュートリアル]

環境

VirtualBox_v6.0.14 CentOS_v7.1908 Python_v3.8.0 MongoDB_v3.2.22 pip_v19.3.1 windows Pycharm-2019.2.3 Enterprise Edition(Community EditionはLinux開発へのリモート接続をサポートしていません)では、システム組み込みのPython2.7.5を処理なしでアクティブ化する必要があり、pyenvで3.8をインストールしようとしましたが、scrapyをインストールするとエラーが発生し続け、最終的にpyenvをアンインストールして手動で再コンパイルしてインストールしました。

CentOSをインストールする

仮想マシンとホストマシンが相互にアクセスし、正常に通信できるようにするため、2 つの仮想ネットワーク カード構成が採用されています。

VirtualBox メニューで、[設定] -> [ネットワーク] に移動し、2 つの仮想ネットワーク カードを有効にします (次の 2 つの図に示すように、仮想マシンが有効になっています)。ネットワーク カード 1 の接続モードを「ネットワーク アドレス変換 NAT」に設定して、仮想マシンが外部ネットワークとホスト マシンにアクセスできるようにします。また、ネットワーク カード 2 の接続モードを「ブリッジ ネットワーク カード」に設定して、ホスト マシンが仮想マシンにアクセスできるようにします。

VirtualBox 仮想マシンに CentOS7 をインストールします。インストール プロセス中に、2 つのネットワーク カード ( CentOS システムが有効) を構成して有効にすることをお勧めします。

インストール手順は省略します。

ここに画像の説明を挿入ここに画像の説明を挿入

仮想マシンを起動した後、 # ip addrを使用して CentOS システムのネットワーク カードの使用状況と IP 割り当てを表示します。 enp0s3 は NAT ネットワーク カード情報であり、デフォルトの IP は 10.0.2.15 です。enp0s8 はブリッジ モードのネットワーク カード情報であり、デフォルトで割り当てられた IP はホスト マシンと同じネットワーク セグメント内にあります。

ここに画像の説明を挿入

特定のネットワーク カードの IP 情報が表示されない場合は、システムのインストール時にネットワーク カードが有効になっていなかった可能性があります。 /etc/sysconfig/network-scripts/ifcfg-enp0s3および/etc/sysconfig/network-scripts/ifcfg-enp0s8で ONBOOT パラメータを yes に変更し、ネットワーク サービス# systemctl start network.serviceまたは# service network restart再起動します。

ここに画像の説明を挿入

DVD イメージを使用してシステムをインストールすると、ssh サービスがデフォルトで使用できるようになります。ホスト マシンが ssh を使用して仮想マシンに接続する場合は、ポート 22 を開くようにファイアウォールを設定する必要があります。

# firewall-cmd --zone=public --add-port=22/tcp --permanent # ファイアウォールがポート 22 を開きます# firewall-cmd --reload # ファイアウォールの設定を再読み込みします# firewall-cmd --zone=public --list-port # 開いているポートを表示します

この時点で、Windows クライアント ツール SSH を使用して仮想マシンにリモート接続し、主にホスト マシンとのクリップボードの共有を容易にする操作にアクセスできます。

yum 国内ミラーソースを構成する

Alibaba yumソースの使用については次の段落を参照してください。

wget ツールをダウンロードします # yum install -y wget
yum ソース構成ファイルが配置されているフォルダーを入力します # cd /etc/yum.repos.d/
ローカルの yum ソースをバックアップします # mv CentOS-Base.repo CentOS-Base.repo_bak
Ali yum ソースを取得します # wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum キャッシュをクリーンアップします# yum clean all
キャッシュを再構築する # yum makecache 
Linux システムをアップグレードする# yum -y update
# netstat -nltp # ポートが占有されているかどうかを確認します # ifconfig # IP を表示するための一般的なコマンド これらのコマンドはデフォルトではインストールされません。次のコマンド ラインを実行してインストールできます # yum install net-tools

サードパーティの依存関係をインストールする

ここでインストールする必要があるものはたくさんありますが、それらはインターネットから収集し、私自身の実践によって追加したものです。面倒なことが嫌なら、それに従ってください。

# yum -y groupinstall "開発ツール"
# yum -y インストール zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libxml2-devel libxslt-devel libffi-devel

mongodbをインストールする

mongodb国内ミラーソースを追加# vim /etc/yum.repos.d/mongodb.repo 次の内容を貼り付けます

[mongodb-org]
name=MongoDBリポジトリ
ベースURL=https://mirrors.tuna.tsinghua.edu.cn/mongodb/yum/el$releasever/
gpgcheck=0
有効=1

yumキャッシュを更新する

# yum makecache

mongodbをインストールする

# yum -y mongodb-org をインストールします
mongod.conf の bindIp パラメータを変更します# vim /etc/mongod.conf

mongodサービスを再起動します

# /etc/init.d/mongod restart または # systemctl restart mongod.service

mongodのバージョンを確認する

# mongod --version

ファイアウォールのポート27017を開く

# ファイアウォールコマンド --zone=public --add-port=27017/tcp --permanent
# ファイアウォールコマンド --reload
# ファイアウォール-cmd --zone=public --list-port

python3.8をインストール

Python 3.8のソースコードをダウンロードし、コンパイルしてインストールする

# wget https://www.python.org/ftp/python/3.8.0/Python-3.8.0.tgz
# tar -zxvf Python-3.8.0.tgz
#cd Python-3.8.0.tgz

依存関係を確認し、Makefile を生成します。

# ./configure --prefix='/usr/local/python3'

コンパイル

# make

インストール

# make install

ソフトリンクを作成する

# ln -s /usr/local/python3/bin/python3 /usr/bin/python3
# ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

Python 3.7以降では、--with-sslは利用できません。configure実行時に--with-sslを追加しなくても正常にインストールできます。失敗した場合は、Python-3.8.0/Modules/Setupファイルの次の3行のコメントを削除してください。

# _ssl _ssl.c \# -DUSE_SSL -I$(SSL)/include -I$(SSL)/include/openssl \# -L$(SSL)/lib -lssl -lcrypto

スクレイピーをインストールする

まず、Pipfileファイルの[source]の下のpipソースパス、url属性を変更します。たとえば、次のように変更します: url = "https://pypi.tuna.tsinghua.edu.cn/simple" または、次のコマンドを直接使用してインストールすることもできます。

# pip3 install --upgrade pip -i https://pypi.tuna.tsinghua.edu.cn/simple # pip を更新するには、清華大学の pip ソースを指定します
# pip3 install scrapy -i https://pypi.tuna.tsinghua.edu.cn/simple # scrapy をインストール

次に、多くの scrapy 依存パッケージがインストールされます。Twisted のインストールは非常に遅くなるので、しばらくお待ちください。次の画像が表示されたらインストールは成功です。

ここに画像の説明を挿入

インストールが完了したら、リモート開発環境の設定を参照してください。

https://www.cnblogs.com/xiao-apple36/p/8587086.html

pipenv は素晴らしいので、Scrapy をワンステップでインストールできると聞きました。

また、依存パッケージの国境を越えたダウンロードを大幅に節約し、Python の複数のバージョンを管理し、ワンクリックで Scrapy をインストールできる Anaconda の使用も推奨されます。特に Windows 環境では強くお勧めします。 交換とお試しを歓迎します

添付

CentOS7.7.1908 清華大学ミラーパス

https://mirrors.tuna.tsinghua.edu.cn/centos/7.7.1908/isos/x86_64/CentOS-7-x86_64-DVD-1908.iso Oracle VirtualBox

https://download.virtualbox.org/virtualbox/6.0.14/VirtualBox-6.0.14-133895-Win.exe

Windows エンタープライズ エディション PyCharm-2019.2.3

https://download.jetbrains.com/python/pycharm-professional-2019.2.3.exe?_ga=2.181479010.470914607.1571468237-1358446455.1571468237

要約する

上記は、VirtualBox CentOS7.7.1908 Python3.8を使用してScrapy開発環境を構築するための紹介です[グラフィックチュートリアル]。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • シェルスクリプトを使用して CentOS7 に python3.8 環境をインストールする (推奨)
  • Centos8 (最小インストール) Python3.8+pip のインストール方法に関するチュートリアル
  • Centos7に最新のpython3.8をインストールする
  • CentOS に python3.8.2 をインストールするための詳細なチュートリアル

<<:  mysql8.0.14.zip のインストール中にデータ フォルダを自動的に作成できませんでした。サービスを開始できません。

>>:  Vueはdivホイールのズームインとズームアウトを実装します

推薦する

ウェブインターフェースデザインでウェブサイトのスタイルガイドを作成する方法(画像とテキスト付き)

スタイル ガイドとは何でしょうか? 簡単に言えば、ストーリーを伝える方法を説明するドキュメントです。...

HTMLでマスクレイヤーを実装する方法 HTMLでマスクレイヤーを使用する方法

Web ページでマスク レイヤーを使用すると、繰り返しの操作を防ぎ、読み込みを促進できます。また、ポ...

1 時間で MySQL データベースを学ぶ (Zhang Guo)

目次1. データベースの概要1.1 開発の歴史2. MySQL の紹介2.1. MySQLの概要2....

Tkinterはjsキャンバスを使用してグラデーションカラーを実現します

目次1. RGBを使用して色を表す2. Tkinter キャンバスコンポーネント3. グラデーション...

MySQL シリーズ 9 MySQL クエリ キャッシュとインデックス

目次チュートリアルシリーズ1. MySQL アーキテクチャクエリキャッシュキャッシュされないクエリ:...

VMWare で Ubuntu を再起動した後、インターネットにアクセスできなくなる問題の解決方法

VMWareでUbuntuを再起動した後、インターネットにアクセスできなくなる問題を解決するには、次...

CSS3 列を使用したカード ウォーターフォール レイアウトを実装するためのサンプル コード

この記事では、カード ウォーターフォール レイアウトを実現するための CSS3 列のサンプル コード...

MySQLデータベースの一般的な最適化操作のまとめ(経験共有)

序文データ中心のアプリケーションの場合、データベースの品質はプログラムのパフォーマンスに直接影響する...

Linux 環境での Oracle 導入チュートリアル

1. 環境と関連ソフトウェア仮想マシン: VMwore Workstation Linuxシステム:...

MySQLデータベースは何をするのか

MySQL は、スウェーデンの会社 MySQL AB によって開発されたリレーショナル データベース...

MySQL のインデックスとビューの使用方法と違いの詳細な説明

序文この記事では主に、MySQL のインデックスとビューの使用方法と違いを紹介し、参考と学習のために...

MySQLリモート接続権限の詳細な説明

1. MySQLデータベースにログインするmysql -u ルート -pユーザーテーブルを表示する ...

VUE+Canvasは、インゴットを受け取る富の神のゲームを実装します

前回のキャンバス ゲーム シリーズへようこそ: 《VUEがFlappy Birdを実装しました〜〜〜...

UbuntuはPythonスクリプトのサンプルコードを定期的に実行する

オリジナルリンク: https://vien.tech/article/157序文この記事では、Ub...

Ubuntuの基本設定: openssh-serverのインストールと使用

Ubuntu 17.10 での openssh-server のインストールと使用を記録します。イン...