If I understood well, you have several Arduinos, each connected via serial link to his own esp8266.
In such configuration, you use esp8266 as a dummy serial<>tcpip transparent bridge. Besides access point authentication, you just set esp8266 IP address and single TCP/IP port in Arduino code, and then any data sent to that TCP/IP port goes to RX of Arduino, and all data that Arduino sends to TX port will be received from esp8266 TCP/IP port. In such configuration, you can not use fphttpclient as data is not available through web server. You should use Synapse or some other TCP/IP client lib on Pi side to cyclically read data from your devices (each having unique IP address). Just keep in mind that serial communication in Arduino is interrupt based, so you should have a small silence period between readings. Something like 1 second should be more then enough (you can experiment how low you can go). You can implement some standard (or your own) request/reply protocol, or make it even simpler by making Arduino to constantly send measured value to TX each second and just parse it on Pi side when received.
Of course, in order for PI to be able to find them, it is simplest if your devices have fixed IP addresses. Either by settng them in Arduino code (you can use the same code on all Arduinos if you use DIP switches), or by using DHCP and making them static in your wireless router / access point.