python

エックスサーバーでpythonのrequestsを使えるようにした

xServerでWEBスクレイピングするpythonアプリの開発をやろうと「import requests」をやったらエラーが出た。

import requests
ModuleNotFoundError: No module named 'requests'

やった事まとめ

1.Linuxbrewをインストール
  pipが使えるpythonをインストールするため

2.pythonをインストール

3.requestsをインストール

ログ

requestsのインストール

requestsとは?
pythonのサードパーティライブラリ
外部のURLを参照することができる

requestsをインストールするためにpip(pythonのパッケージ管理ツール)が必要

エックスサーバーでは管理者権限がないため、普通にpipが使えない

エックスサーバーにはもともとpythonが入っているが、pipが使えるpythonを新しくインストールするためにLinuxbrewをインストール

Linuxbrewとは?
rootではなくユーザーのhomeディレクトリにインストールするパッケージ管理ツール
Macで人気のパッケージ管理ツールhomebrewのLinux版とのこと

以下公式サイトに従ってインストール

https://docs.brew.sh/Homebrew-on-Linux

インストールコマンドを実行

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

※最初「500 Internal Server Error」が出たが、翌日やったらうまくいった。

パスワードを求められるが、何も入力しないで3回エンターを押すとインストールが始まった。

パスを通すために下記を実行

test -d ~/.linuxbrew && eval $(~/.linuxbrew/bin/brew shellenv)
test -d /home/linuxbrew/.linuxbrew && eval $(/home/linuxbrew/.linuxbrew/bin/brew shellenv)
test -r ~/.bash_profile && echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.bash_profile
echo "eval \$($(brew --prefix)/bin/brew shellenv)" >>~/.profile

※この最後の1行はやったらダメだったらしい。。でもやってしまった。
とりあえずコマンドは問題なく使えるしこのまま行こう。
⇒調べると.profileは、「.bash_profile」と「.bash_login」がない状態でログインしたときに読み込まれるファイルとのこと、.bash_profileのファイルがあるので、.profileは読み込まれず意味なしかも?

次にpythonをインストール

brew install python3

pythonのバージョンを確認

python3 -V
Python 3.7.7

pipでrequestsをインストール

pip3 install requests

ABOUT ME
hazukei
「はずけい」と申します。 この度一児の父となりました。まだ実感はわかないのですが、猛烈に忙しくなりそうです。楽しみつつ頑張りたいと思います!