跳转至

Python Tips#

  1. 使用 socks5 代理。

Python 的 requests 库默认不支持 SOCKS 协议的代理,需要另外安装,安装方法:

% pip install "requests[socks]"

示例:

  File "/Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages/requests/adapters.py", line 61, in SOCKSProxyManager
    raise InvalidSchema("Missing dependencies for SOCKS support.")
requests.exceptions.InvalidSchema: Missing dependencies for SOCKS support.
(mkdocs) [12:40]m@Karratha:~/web/html/URL@main✗✗✗
% pip install "requests[socks]"
Looking in indexes: http://mirrors.aliyun.com/pypi/simple/
Requirement already satisfied: requests[socks] in /Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages (2.31.0)
Requirement already satisfied: charset-normalizer<4,>=2 in /Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages (from requests[socks]) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in /Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages (from requests[socks]) (3.7)
Requirement already satisfied: urllib3<3,>=1.21.1 in /Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages (from requests[socks]) (2.2.1)
Requirement already satisfied: certifi>=2017.4.17 in /Users/m/.pyenv/versions/3.12.2/envs/mkdocs/lib/python3.12/site-packages (from requests[socks]) (2024.2.2)
Collecting PySocks!=1.5.7,>=1.5.6 (from requests[socks])
  Downloading http://mirrors.aliyun.com/pypi/packages/8d/59/b4572118e098ac8e46e399a1dd0f2d85403ce8bbaad9ec79373ed6badaf9/PySocks-1.7.1-py3-none-any.whl (16 kB)
Installing collected packages: PySocks
Successfully installed PySocks-1.7.1
(mkdocs) [12:42]m@Karratha:~/web/html/URL@main✗✗✗
% ALL_PROXY=socks5://127.0.0.1:1080 mkdocs build
INFO    -  Cleaning site directory
INFO    -  Building documentation to directory: /Users/m/web/html/URL/site
INFO    -  The following pages exist in the docs directory, but are not included in the "nav" configuration:
             - en/index.md
             - zh/index.md
INFO    -  Downloading external file: https://fonts.googleapis.com/css?family=Roboto:300,300i,400,400i,700,700i%7CRoboto+Mono:400,400i,700,700i&display=fallback
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc3CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc-CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc2CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc5CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc1CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc0CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TjASc6CsQ.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xFIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xMIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xEIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xLIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xHIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xGIzIFKw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOkCnqEu92Fr1Mu51xIIzI.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic3CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic-CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic2CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic5CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic1CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic0CsTKlA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOjCnqEu92Fr1Mu51TzBic6CsQ.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fCRc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fABc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fCBc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fBxc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fCxc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fChc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmSU5fBBc4.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu72xKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu5mxKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7mxKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4WxKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7WxKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7GxKOzY.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxK.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfCRc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfABc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfCBc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBxc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfCxc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc4.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEluUlYIw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEn-UlYIw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEmOUlYIw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtElOUlYIw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEleUlYIw.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xdDF4xlVMF-BfR8bXMIjhOsXG-q2oeuFoqFrlnAIe2Imhk1T8rbociImtEm-Ul.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSV0mf0h.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSx0mf0h.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSt0mf0h.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSd0mf0h.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSZ0mf0h.woff2
INFO    -  Downloading external file: https://fonts.gstatic.com/s/robotomono/v23/L0xTDF4xlVMF-BfR8bXMIhJHg45mwgGEFl0_3vrtSM1J-gEPT5Ese6hmHSh0mQ.woff2
INFO    -  Documentation built in 25.13 seconds
(mkdocs) [12:42]m@Karratha:~/web/html/URL@main✗✗✗