簡體   English   中英

無需安裝即可使用 Python 庫

[英]Use Python library without installing

我希望自定義流行的 Python 庫 Scrapy(主要包括一些print命令等)來檢查它在內部是如何工作的。 我從 GitHub 中提取了源代碼並創建了一個conda虛擬環境來開始我的實驗。

首先,我進入庫文件夾並嘗試$ python -c "import scrapy" 這要求我下載一些我使用pip做的依賴項,經過幾次迭代后,我可以導入它。

這個還能用嗎? 我不必編譯/安裝它等嗎?

此外,Scrapy 也有一個我希望使用的 CLI(例如$ scrapy --help )。 我該怎么辦?

我最終希望的是在發行版中編輯一個核心文件,保存它,進入我的home目錄,從終端運行 Scrapy 並查看有什么變化。

雖然在 Python 中有編譯(與 Edgar Aroutiounian 的評論相反),但沒有必要,因為 Python 有一個即時編譯器,可以在您執行它們時編譯所有腳本。 如果您可以導入文件,您通常可以使用它。

我建議您構建和安裝,但在沙盒環境中。

我相信您修改scrapy並使用修改后的版本的最簡單方法,同時保持周轉時間短,是做

python setup.py install

在 git 存儲庫的根目錄中。

如果你想避免在你的系統上安裝修改后的 scrapy,你可以使用virtualenv創建一種非常適合 python 項目的沙箱。

通常你會安裝 virtualenv 包,在 debian 上它是python-virtualenv ,然后執行:

mkdir ~/envs
virtualenv ~/envs/scrapy
source ~/envs/scrapy/bin/activate

這為您提供了一個環境,其中步驟python setup.py install只會在~/envs/scrapy/目錄中安裝您修改后的scrapy。 這將使您的系統不受安裝的影響。

這個環境是活躍的,獨立於你在哪個目錄中工作。要退出 virtualenv,你只需編寫deactivate然后你就會回到正常環境。

然而,Scrapy 確實有其構建的依賴項,因此在以這種方式安裝時,您需要在系統上安裝這些依賴項。 如果這是一個問題,您可以更進一步,並使用lxc實例和 Ubuntu 模板來獲取完整系統的沙箱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM