查看或修改mac中的path環境變數

Python常見問題,如何查看或修改Mac中的PATH 環境變數

目錄

    原始文章

    Python常見問題,如何查看或修改Mac中的PATH 環境變數


    在Python中使用Selenium時發生錯誤

    在Mac和Windows中,都會有一個系統預設的環境變數PATH Variable。環境變數記錄的是幾個系統預設的資料夾,在某些情況下,我們必須將某些檔案放入這幾個資料夾的其中之一,才能讀利讓Python讀取。最常見的情況之一即是使用Selenium套件時,需要將Chrome或是Firefox等瀏覽器的Webdriver放到這幾個資料夾中,否則會出現以下錯誤。

    #Chrome
    selenium.common.exceptions.WebDriverException: Message: ‘chromedriver’ executable needs to be in PATH.

    #Firefox
    selenium.common.exceptions.WebDriverException: Message: ‘geckodriver’ executable needs to be in PATH.

    我也試過指定executable_path,卻出現另外的錯誤訊息:

    chrome_path = r’/Users/Aron/’
    driver = webdriver.Chrome(executable_path=chrome_path)

    #Output
    selenium.common.exceptions.WebDriverException: Message: ‘Aron’ executable may have wrong permissions.

    解決辦法是修改成資料夾路徑加檔案名稱,而不是只有資料夾。

    # Google Chomre
    webdriver_path = r’/Users/Aron/chromedriver.exe’
    driver = webdriver.Chrome(executable_path=webdriver_path)

    # Firefox,geckodriver不需要副檔名
    webdriver_path = r’/Users/Aron/geckodriver’
    driver = webdriver.Chrome(executable_path=webdriver_path)

    以上是題外話,完成後連下面的PATH環境變數都不用修改了。那Mac中的PATH到底是什麼呢?網路上有很多文章,但我覺得大部份都寫得好複雜,對Python初學者很不友善。

    MAC 預設的PATH

    簡單明瞭,就是以下的五個路徑,你可以在Finder中按Cmd+Shift+G,直接跳至指定資料夾。圖片中的第六個選項則是我自己新增的路徑。

    /usr/local/bin
    /usr/bin
    /bin
    /usr/sbin
    /sbin

    你可以試著直接將檔案丟到以上資料夾中,但可能會有權限問題,導致檔案拖曳失敗。那你可以試著新增路徑,並將檔案丟進新路徑中。

    新增PATH環境變數的方法

    1) 叫出搜尋列,輸入Terminal並按Enter。

    2) 在Terminal中輸入以下指令,並按Enter。

     sudo nano /etc/paths

    3) 輸入你的密碼。當你輸入時,畫面上不會出現任何文字和符號,這是正常的。
    4) 接下來你會看到上圖中的五條預設路徑。如果你只是要確認PATH是什麼的話,做到這一個步就可以了。如果你想新增新的變數,將游標移到最下面並輸入即可。
    5) 按Control-X離開。
    6) 按Y存檔。
    7) 在Terminal中再輸入一次這個指令,確定剛才的動作有確實存檔。

     sudo nano /etc/paths

    8) 大功告成!很簡單吧



    推薦文章

    Aron

    工業設計系畢業,曾任職知名品牌行銷企劃,做點設計,寫文案也寫網站;目前擔任零售業數據分析師。最近開始研究Python量化投資和虛擬貨幣。

    facebook telegram
    Content Protection by DMCA.com

    發佈留言

    • * 表示必填欄位
    • 您填寫的電子郵件不會被公開
    • 請確認您的電子郵件正確無誤,當您的留言收到新的回覆時,我們會寄送通知信件給您

    發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *