Skip to content

prettymaps triggered an API block? #798

Description

@zoyander

Hi!

I'm using prettymaps, and getting the following error relating to the connection to Overpass API:

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='overpass-api.de', port=443): Max retries exceeded with url: /api/interpreter (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7444bd0f5930>: Failed to establish a new connection: [Errno 111] Connection refused'))

It looks like my IP address has been blocked from accessing the overpass server (when I access overpass-api.de from a browser with a VPN it's fine, but with the VPN off I get err_connection_refused).

Although this is error no 111 rather than 406, I wonder if the discussion here might contextualise this issue somewhat: #791

The thing is, I'm not doing anything heavy duty that should involve an excessive number of requests. I'm editing presets by hand, changing coordinates by hand, and executing requests one at a time. My only aim today is to make a nice map of my sister's wedding venue and get my Cricut to draw it. Nevertheless, my light personal use of prettymaps seems to have triggered a block.

The only thing I can think of that might have caused this issue is that while I was waiting for a request to execute in terminal, I played with the streamlit app in browser. This would probably involve two requests coming in at once from my IP. Would that be enough to trigger the block? Is there anything about the way prettymaps queries the API that could trigger a block?

Full output below.

Traceback (most recent call last):
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connection.py", line 198, in _new_conn
    sock = connection.create_connection(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/util/connection.py", line 85, in create_connection
    raise err
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/util/connection.py", line 73, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connectionpool.py", line 787, in urlopen
    response = self._make_request(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connectionpool.py", line 488, in _make_request
    raise new_e
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connectionpool.py", line 464, in _make_request
    self._validate_conn(conn)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connectionpool.py", line 1093, in _validate_conn
    conn.connect()
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connection.py", line 753, in connect
    self.sock = sock = self._new_conn()
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connection.py", line 213, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7444bd0f5930>: Failed to establish a new connection: [Errno 111] Connection refused

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/adapters.py", line 644, in send
    resp = conn.urlopen(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/connectionpool.py", line 841, in urlopen
    retries = retries.increment(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/urllib3/util/retry.py", line 519, in increment
    raise MaxRetryError(_pool, url, reason) from reason  # type: ignore[arg-type]
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='overpass-api.de', port=443): Max retries exceeded with url: /api/interpreter (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7444bd0f5930>: Failed to establish a new connection: [Errno 111] Connection refused'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/home/zoy/Documents/prettymaps/20260801.py", line 3, in <module>
    plot = prettymaps.plot(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/prettymaps/draw.py", line 902, in plot
    gdfs = get_gdfs(query, layers, radius, dilate, -rotation)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/prettymaps/fetch.py", line 215, in get_gdfs
    gdfs.update({
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/prettymaps/fetch.py", line 216, in <dictcomp>
    layer: get_gdf(layer, perimeter, **kwargs)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/prettymaps/fetch.py", line 168, in get_gdf
    graph = ox.graph_from_polygon(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/osmnx/graph.py", line 432, in graph_from_polygon
    response_jsons = downloader._osm_network_download(poly_buff, network_type, custom_filter)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/osmnx/downloader.py", line 548, in _osm_network_download
    response_json = overpass_request(data={"data": query_str})
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/osmnx/downloader.py", line 773, in overpass_request
    response = requests.post(
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/api.py", line 115, in post
    return request("post", url, data=data, json=json, **kwargs)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/api.py", line 59, in request
    return session.request(method=method, url=url, **kwargs)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/sessions.py", line 589, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/sessions.py", line 703, in send
    r = adapter.send(request, **kwargs)
  File "/home/zoy/.venvs/prettymaps/lib/python3.10/site-packages/requests/adapters.py", line 677, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='overpass-api.de', port=443): Max retries exceeded with url: /api/interpreter (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7444bd0f5930>: Failed to establish a new connection: [Errno 111] Connection refused'))

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions