I found a new function (OSMImport) in the function library. It can download the road data of OpenStreetMap for analysis.
(*Central Park,New York; coordinate is {40.783333, -73.966667}*)
osm = ResourceFunction["OSMImport"][
GeoBoundsRegion[
GeoBounds@
GeoCircle[#,
Quantity[200, "Meters"]]]] &@{40.783333`, -73.966667`};
(*Show Map*)
GeoGraphics[
Values[Line[Values[osm[["Nodes", #Nodes, "Position"]]]] & /@
osm["Ways"]], GeoBackground -> "StreetMap",
GeoRangePadding -> None, AspectRatio -> 1]
(*Calculate the road length around Central Park; The total length of \
the road is 21853.8 m*)
GeoDistance[#] &@Values[osm[["Nodes", #Nodes, "Position"]]] & /@
osm["Ways"] // Values // Total

But there are still some questions about the use results. First, the above example does not filter road types, but only a few roads are included. Second, if I want to know the area of the grassland, how to do it?
I hope that those who have studied these issues can provide suggestions.