A method for data extraction and gathering from a target web server using a nearest available proxy server, the method comprising: receiving, by a proxy gateway at a proxy infrastructure geographically closest to a user device, a user request from said user device; forwarding, by the proxy gateway at the proxy infrastructure, the user request to a proxy messenger; checking, by the proxy messenger at the proxy infrastructure, the user request for geolocation of an exit node; requesting, by the proxy messenger at the proxy infrastructure, from a repository unit, metadata of the exit node to implement the user request; wherein, if the user request does not contain any user-defined preferences for a geolocation of an exit node, the proxy messenger requests metadata of an exit node that is in geographical proximity to the proxy infrastructure; and wherein, if the user request does contain user-defined preferences for exit node geo-location, the proxy messenger requests metadata of an exit node that satisfies the user-defined preferences, wherein the metadata of any exit node include an IP address of the exit node and/or an IP address of a specific proxy supernode to which the exit node is connected; selecting, by the repository unit at the proxy infrastructure from a pool database, the exit node to implement the user request, in accordance with the requesting by the proxy messenger; sending, by the repository unit, the requested metadata to the proxy messenger in response to the requesting; sending, by the proxy messenger at the proxy infrastructure, the user request and an IP address of the exit node selected to the respective proxy supernode to which the selected exit node is connected; instructing, by the proxy supernode, the exit node selected to establish a connection with the target web server; sending, by the proxy supernode, the user request to the exit node selected; forwarding, by the exit node selected, the user request to the target web server. receiving, by a proxy gateway at a proxy infrastructure geographically closest to a user device, a user request from said user device; forwarding, by the proxy gateway at the proxy infrastructure, the user request to a proxy messenger; checking, by the proxy messenger at the proxy infrastructure, the user request for geolocation of an exit node; requesting, by the proxy messenger at the proxy infrastructure, from a repository unit, metadata of the exit node to implement the user request; wherein, if the user request does not contain any user-defined preferences for a geolocation of an exit node, the proxy messenger requests metadata of an exit node that is in geographical proximity to the proxy infrastructure; and wherein, if the user request does contain user-defined preferences for exit node geo-location, the proxy messenger requests metadata of an exit node that satisfies the user-defined preferences, wherein the metadata of any exit node include an IP address of the exit node and/or an IP address of a specific proxy supernode to which the exit node is connected; wherein, if the user request does not contain any user-defined preferences for a geolocation of an exit node, the proxy messenger requests metadata of an exit node that is in geographical proximity to the proxy infrastructure; and wherein, if the user request does contain user-defined preferences for exit node geo-location, the proxy messenger requests metadata of an exit node that satisfies the user-defined preferences, wherein the metadata of any exit node include an IP address of the exit node and/or an IP address of a specific proxy supernode to which the exit node is connected; selecting, by the repository unit at the proxy infrastructure from a pool database, the exit node to implement the user request, in accordance with the requesting by the proxy messenger; sending, by the repository unit, the requested metadata to the proxy messenger in response to the requesting; sending, by the proxy messenger at the proxy infrastructure, the user request and an IP address of the exit node selected to the respective proxy supernode to which the selected exit node is connected; instructing, by the proxy supernode, the exit node selected to establish a connection with the target web server; sending, by the proxy supernode, the user request to the exit node selected; forwarding, by the exit node selected, the user request to the target web server.