【问题标题】:Use urllib.urlopen or requests.get to get data from Flask Server使用 urllib.urlopen 或 requests.get 从 Flask Server 获取数据
【发布时间】:2020-04-24 16:13:13
【问题描述】:

我有一个 Flask Server 正在运行并尝试像这样请求数据:

import urllib.request
urllib.request.urlopen('http://localhost:5000')
# HTTPError: HTTP Error 403: Forbidden

import urllib.request
urllib.request.urlopen('http://my.ip.address:5000')
# HTTPError: HTTP Error 503: Service Unavailable

import requests
requests.get("http://localhost:5000")
# <Response [403]>

这是我的烧瓶虚拟代码:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def route_index():
    return 'test'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0')

我需要在 Flask 服务器端应用某些设置以允许这样的请求吗?或者是否需要在urlopenrequests.get 中设置参数才能正确检索数据?

【问题讨论】:

  • 您是否尝试在服务器运行时在浏览器中打开 URL localhost:5000?你得到了什么?

标签: python-3.x flask python-requests


【解决方案1】:

问题似乎是我组织的代理设置。

使用https://pypi.org/project/pypac 一切正常:

from pypac import PACSession
session = PACSession()
session.get('http://localhost:5000')
# <Response [200]>

【讨论】:

    猜你喜欢
    • 2019-02-18
    • 1970-01-01
    • 2022-01-04
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    • 2020-11-23
    相关资源
    最近更新 更多