We present a general procedure for constructing tensor networks that accurately reproduce holographic states in conformal field theories (CFTs). Given a state in a large-N CFT with a static, semiclassical gravitational dual, we build a tensor network by an iterative series of approximations that eliminate redundant degrees of freedom and minimize the bond dimensions of the resulting network. We argue that the bond dimensions of the tensor network will match the areas of the corresponding bulk surfaces. For "tree" tensor networks (i.e., those that are constructed by discretizing spacetime with nonintersecting Ryu-Takayanagi surfaces), our arguments can be made rigorous using a version of one-shot entanglement distillation in the CFT. Using the known quantum error correcting properties of AdS/CFT, we show that bulk legs can be added to the tensor networks to create holographic quantum error correcting codes. These codes behave similarly to previous holographic tensor network toy models, but describe actual bulk excitations in continuum AdS/CFT. By assuming some natural generalizations of the "holographic entanglement of purification" conjecture, we are able to construct tensor networks for more general bulk discretizations, leading to finer-grained networks that partition the information content of a Ryu-Takayanagi surface into tensor-factorized subregions. While the granularity of such a tensor network must be set larger than the string/Planck scales, we expect that it can be chosen to lie well below the AdS scale. However, we also prove a no-go theorem which shows that the bulk-to-boundary maps cannot all be isometries in a tensor network with intersecting Ryu-Takayanagi surfaces.