Your second example would be better, since open/close operation on files has significant overhead, and the latter only did it once.
However, it should be even better if you store the result (if get_text_from_url won't return a too big content), like this:
def create_text(filename):
urllist = get_urls()
result = map(get_text_from_url, urllist)
with open(filename, "w") as file:
file.write("\n".join(result))
So there's only one write, and only blocks the file for a short period of time (assuming that get_text_from_url will do web request, which costs much longer time than local file writes).