簡體   English   中英

我如何在 python 代碼中修復這個錯誤

[英]how can i fix it this error in python code

我想檢查登錄狀態。 我制作程序來檢查它

import requests
import json
import datetime


headers = {
    "Accept": "application/json, text/plain, */*",
    "Accept-Encoding": "gzip, deflate",
    "Accept-Language": "ko-KR,ko;q=0.9,en-US;q=0.8,en;q=0.7",
    "Connection": "keep-alive",
    "Content-Length": "50",
    "Content-Type": "application/json;charset=UTF-8",
    "Cookie": "_ga=GA1.2.290443894.1570500092; _gid=GA1.2.963761342.1579153496; JSESSIONID=A4B3165F23FBEA34B4BBE429D00F12DF",
    "Host": "marke.ai",
    "Origin": "http://marke",
    "Referer": "http://marke/event2/login",
    "User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.117 Mobile Safari/537.36",
}
url = "http://mark/api/users/login"
va = {"username": "seg", "password": "egkegn"}
c = requests.post(url, data=json.dumps(va), headers=headers)
if c.status_code != 200:
    print("error")

這在我使用 Pycharm 的本地 Windows 中運行良好

但是當我在 Linux 中運行代碼時,我得到了這樣的錯誤

requests.exceptions.ProxyError: HTTPConnectionPool(host='marke', port=80):
Max retries exceeded with url: http://marke.ai/api/users/login (
  Caused by ProxyError('Cannot connect to proxy.', 
    NewConnectionError('<urllib3.connection.HTTPConnection>: Failed to establish a new connection: [Errno 110] Connection timed out',)
  )
)

所以..有什么問題請教我如果你知道解決方案請教我!!

謝謝你

根據您的錯誤,您似乎是在代理后面。

因此,您必須在構建請求時指定代理參數。

按照此格式將您的代理構建為 dict

proxies = {
    "http": "http://my_proxy:my_port",
    "https": "https://my_proxy:my_port"
}

如果您不知道代理參數,則可以使用urllib模塊獲取它們:

import urllib
proxies = urllib.request.getproxies()

在那個 Linux 主機上配置了一個代理服務器,它無法連接到它。

根據 文檔判斷,您可能設置了PROXY_URL環境變量。

修改@Arkenys 答案。 請試試這個。

import urllib.request
proxies = urllib.request.getproxies()

# all other things

c = requests.post(url, data=json.dumps(va), headers=headers, proxies=proxies)

暫無
暫無

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

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